Home | History | Annotate | Download | only in tests
      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:
     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