Home | History | Annotate | Download | only in storage_monitor
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 //
      5 // This file contains a subclass of StorageMonitorWin to simulate device
      6 // changed events for testing.
      7 
      8 #ifndef COMPONENTS_STORAGE_MONITOR_TEST_STORAGE_MONITOR_WIN_H_
      9 #define COMPONENTS_STORAGE_MONITOR_TEST_STORAGE_MONITOR_WIN_H_
     10 
     11 #include <windows.h>
     12 
     13 #include "base/memory/ref_counted.h"
     14 #include "components/storage_monitor/storage_monitor_win.h"
     15 
     16 namespace storage_monitor {
     17 
     18 class TestPortableDeviceWatcherWin;
     19 class TestVolumeMountWatcherWin;
     20 
     21 class TestStorageMonitorWin: public StorageMonitorWin {
     22  public:
     23   TestStorageMonitorWin(
     24       TestVolumeMountWatcherWin* volume_mount_watcher,
     25       TestPortableDeviceWatcherWin* portable_device_watcher);
     26 
     27   virtual ~TestStorageMonitorWin();
     28 
     29   void InjectDeviceChange(UINT event_type, DWORD data);
     30 
     31   VolumeMountWatcherWin* volume_mount_watcher();
     32 
     33   virtual Receiver* receiver() const OVERRIDE;
     34 
     35  private:
     36   DISALLOW_COPY_AND_ASSIGN(TestStorageMonitorWin);
     37 };
     38 
     39 }  // namespace storage_monitor
     40 
     41 #endif  // COMPONENTS_STORAGE_MONITOR_TEST_STORAGE_MONITOR_WIN_H_
     42