dev_fs_for_testing.h revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
19f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson// Copyright 2013 The Chromium Authors. All rights reserved.
29f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson// Use of this source code is governed by a BSD-style license that can be
39f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson// found in the LICENSE file.
49f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
59f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#ifndef TESTS_NACL_IO_TEST_DEV_FS_FOR_TESTING_H_
69f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#define TESTS_NACL_IO_TEST_DEV_FS_FOR_TESTING_H_
79f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
89f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#include "fake_ppapi/fake_pepper_interface.h"
99f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#include "gmock/gmock.h"
109f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#include "nacl_io/devfs/dev_fs.h"
119f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#include "nacl_io/filesystem.h"
129f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
139f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#define NULL_NODE ((Node*)NULL)
149f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
159f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilsonclass DevFsForTesting : public nacl_io::DevFs {
169f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson public:
179f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson  DevFsForTesting() {
189f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson    nacl_io::FsInitArgs args(1);
199f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson    args.ppapi = &pepper_;
209f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson    Init(args);
219f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson  }
229f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
239f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson  int num_nodes() { return (int)inode_pool_.size(); }
249f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson private:
259f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson  FakePepperInterface pepper_;
269f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson};
279f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson
289f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson#endif  // TESTS_NACL_IO_TEST_DEV_FS_FOR_TESTING_H_
299f8118474e9513f7a5b7d2a05e4a0fb15d1a6569Jesse Wilson