Standardize usage of virtual/override/final in content/
[chromium-blink-merge.git] / content / test / plugin / plugin_thread_async_call_test.h
blob06c13f5dfe3ebeb5f46694d2ac7571d36f4c97af
1 // Copyright (c) 2011 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.
5 #ifndef CONTENT_TEST_PLUGIN_PLUGIN_THREAD_ASYNC_CALL_TEST_H_
6 #define CONTENT_TEST_PLUGIN_PLUGIN_THREAD_ASYNC_CALL_TEST_H_
8 #include "content/test/plugin/plugin_test.h"
10 namespace base {
11 class ShadowingAtExitManager;
14 namespace NPAPIClient {
16 // This class tests scheduling and unscheduling of async callbacks using
17 // NPN_PluginThreadAsyncCall.
18 class PluginThreadAsyncCallTest : public PluginTest {
19 public:
20 PluginThreadAsyncCallTest(NPP id, NPNetscapeFuncs *host_functions);
21 ~PluginThreadAsyncCallTest() override;
23 NPError New(uint16 mode,
24 int16 argc,
25 const char* argn[],
26 const char* argv[],
27 NPSavedData* saved) override;
29 NPError Destroy() override;
31 void AsyncCall();
32 void OnCallSucceeded();
33 void OnCallCompleted();
35 private:
36 // base::Thread needs one of these.
37 base::ShadowingAtExitManager* at_exit_manager_;
39 DISALLOW_COPY_AND_ASSIGN(PluginThreadAsyncCallTest);
42 } // namespace NPAPIClient
44 #endif // CONTENT_TEST_PLUGIN_PLUGIN_THREAD_ASYNC_CALL_TEST_H_