OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 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 #include "ppapi/tests/test_video_decoder.h" | 5 #include "ppapi/tests/test_video_decoder.h" |
6 | 6 |
7 #include "ppapi/c/dev/ppb_video_decoder_dev.h" | 7 #include "ppapi/c/dev/ppb_video_decoder_dev.h" |
8 #include "ppapi/c/dev/ppb_testing_dev.h" | 8 #include "ppapi/c/dev/ppb_testing_dev.h" |
9 #include "ppapi/c/pp_errors.h" | |
10 #include "ppapi/c/ppb_var.h" | 9 #include "ppapi/c/ppb_var.h" |
11 #include "ppapi/tests/testing_instance.h" | 10 #include "ppapi/tests/testing_instance.h" |
12 | 11 |
13 REGISTER_TEST_CASE(VideoDecoder); | 12 REGISTER_TEST_CASE(VideoDecoder); |
14 | 13 |
15 bool TestVideoDecoder::Init() { | 14 bool TestVideoDecoder::Init() { |
16 video_decoder_interface_ = reinterpret_cast<PPB_VideoDecoder_Dev const*>( | 15 video_decoder_interface_ = reinterpret_cast<PPB_VideoDecoder_Dev const*>( |
17 pp::Module::Get()->GetBrowserInterface(PPB_VIDEODECODER_DEV_INTERFACE)); | 16 pp::Module::Get()->GetBrowserInterface(PPB_VIDEODECODER_DEV_INTERFACE)); |
18 var_interface_ = reinterpret_cast<PPB_Var const*>( | 17 var_interface_ = reinterpret_cast<PPB_Var const*>( |
19 pp::Module::Get()->GetBrowserInterface(PPB_VAR_INTERFACE)); | 18 pp::Module::Get()->GetBrowserInterface(PPB_VAR_INTERFACE)); |
20 return video_decoder_interface_ && var_interface_ && InitTestingInterface(); | 19 return video_decoder_interface_ && var_interface_ && InitTestingInterface(); |
21 } | 20 } |
22 | 21 |
23 void TestVideoDecoder::RunTest() { | 22 void TestVideoDecoder::RunTest() { |
24 RUN_TEST(CreateAndInitialize); | 23 instance_->LogTest("Create", TestCreate()); |
25 } | 24 } |
26 | 25 |
27 void TestVideoDecoder::QuitMessageLoop() { | 26 void TestVideoDecoder::QuitMessageLoop() { |
28 testing_interface_->QuitMessageLoop(instance_->pp_instance()); | 27 testing_interface_->QuitMessageLoop(instance_->pp_instance()); |
29 } | 28 } |
30 | 29 |
31 std::string TestVideoDecoder::TestCreateAndInitialize() { | 30 std::string TestVideoDecoder::TestCreate() { |
32 PP_Resource decoder = video_decoder_interface_->Create( | 31 PP_Resource decoder = video_decoder_interface_->Create( |
33 instance_->pp_instance()); | 32 instance_->pp_instance(), NULL, PP_MakeCompletionCallback(NULL, NULL)); |
34 if (decoder == 0) | 33 if (decoder == 0) { |
35 return "Create: error creating the decoder"; | 34 return "Error creating the decoder"; |
36 | 35 } |
37 int32_t pp_error = video_decoder_interface_->Initialize( | |
38 decoder, NULL, PP_BlockUntilComplete()); | |
39 pp::Module::Get()->core()->ReleaseResource(decoder); | |
40 if (pp_error != PP_ERROR_BADARGUMENT) | |
41 return "Initialize: error detecting null callback"; | |
42 | |
43 PASS(); | 36 PASS(); |
44 } | 37 } |
OLD | NEW |