• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 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 #ifndef PPAPI_TESTS_TEST_IMAGE_DATA_H_
6 #define PPAPI_TESTS_TEST_IMAGE_DATA_H_
7 
8 #include <string>
9 
10 #include "ppapi/c/ppb_image_data.h"
11 #include "ppapi/tests/test_case.h"
12 
13 class TestImageData : public TestCase {
14  public:
TestImageData(TestingInstance * instance)15   TestImageData(TestingInstance* instance) : TestCase(instance) {}
16 
17   // TestCase implementation.
18   virtual bool Init();
19   virtual void RunTests(const std::string& filter);
20 
21  private:
22   std::string TestInvalidFormat();
23   std::string TestGetNativeFormat();
24   std::string TestFormatSupported();
25   std::string TestInvalidSize();
26   std::string TestHugeSize();
27   std::string TestInitToZero();
28   std::string TestIsImageData();
29 
30   // Subtests used by tests above; pass in a pixel format.
31   std::string SubTestFormatSupported(PP_ImageDataFormat format);
32   std::string SubTestInvalidSize(PP_ImageDataFormat format);
33   std::string SubTestHugeSize(PP_ImageDataFormat format);
34   std::string SubTestInitToZero(PP_ImageDataFormat format);
35   std::string SubTestIsImageData(PP_ImageDataFormat format);
36 
37   // Used by the tests that access the C API directly.
38   const PPB_ImageData* image_data_interface_;
39 };
40 
41 #endif  // PPAPI_TESTS_TEST_IMAGE_DATA_H_
42