OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H | 5 #ifndef WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H |
6 #define WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H | 6 #define WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H |
7 | 7 |
8 #include "base/at_exit.h" | |
9 #include "base/time.h" | 8 #include "base/time.h" |
10 #include "webkit/plugins/npapi/test/plugin_test.h" | 9 #include "webkit/plugins/npapi/test/plugin_test.h" |
11 | 10 |
12 namespace NPAPIClient { | 11 namespace NPAPIClient { |
13 | 12 |
14 // This class tests scheduling and unscheduling of timers using | 13 // This class tests scheduling and unscheduling of timers using |
15 // NPN_ScheduleTimer and NPN_UnscheduleTimer. | 14 // NPN_ScheduleTimer and NPN_UnscheduleTimer. |
16 class ScheduleTimerTest : public PluginTest { | 15 class ScheduleTimerTest : public PluginTest { |
17 public: | 16 public: |
18 ScheduleTimerTest(NPP id, NPNetscapeFuncs *host_functions); | 17 ScheduleTimerTest(NPP id, NPNetscapeFuncs *host_functions); |
19 | 18 |
20 virtual NPError New(uint16 mode, int16 argc, const char* argn[], | 19 virtual NPError New(uint16 mode, int16 argc, const char* argn[], |
21 const char* argv[], NPSavedData* saved); | 20 const char* argv[], NPSavedData* saved); |
22 | 21 |
23 void OnTimer(uint32 timer_id); | 22 void OnTimer(uint32 timer_id); |
24 | 23 |
25 private: | 24 private: |
26 // base::Time needs one of these. | |
27 base::AtExitManager at_exit_manager_; | |
28 | |
29 // Table mapping timer index (as used in event schedule) to timer id. | 25 // Table mapping timer index (as used in event schedule) to timer id. |
30 static const int kNumTimers = 3; | 26 static const int kNumTimers = 3; |
31 uint32 timer_ids_[kNumTimers]; | 27 uint32 timer_ids_[kNumTimers]; |
32 | 28 |
33 // Schedule of events for test. | 29 // Schedule of events for test. |
34 static const int kNumEvents = 11; | 30 static const int kNumEvents = 11; |
35 struct Event { | 31 struct Event { |
36 int time; | 32 int time; |
37 | 33 |
38 // The index of the timer that triggered the event or -1 for the first | 34 // The index of the timer that triggered the event or -1 for the first |
(...skipping 20 matching lines...) Expand all Loading... |
59 base::Time start_time_; | 55 base::Time start_time_; |
60 | 56 |
61 // Returns index of matching unreceived event or -1 if not found. | 57 // Returns index of matching unreceived event or -1 if not found. |
62 int FindUnreceivedEvent(int time, uint32 timer_id); | 58 int FindUnreceivedEvent(int time, uint32 timer_id); |
63 void HandleEvent(int event_index); | 59 void HandleEvent(int event_index); |
64 }; | 60 }; |
65 | 61 |
66 } // namespace NPAPIClient | 62 } // namespace NPAPIClient |
67 | 63 |
68 #endif // WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H | 64 #endif // WEBKIT_PLUGINS_NPAPI_TEST_PLUGIN_SCHEDULE_TIMER_TEST_H |
OLD | NEW |