1a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// found in the LICENSE file. 4a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#ifndef PPAPI_TESTS_TEST_MEDIA_STREAM_AUDIO_TRACK_H_ 646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#define PPAPI_TESTS_TEST_MEDIA_STREAM_AUDIO_TRACK_H_ 7a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 8a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include <string> 9a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 10a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include "ppapi/cpp/media_stream_audio_track.h" 11a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include "ppapi/cpp/video_frame.h" 12a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include "ppapi/tests/test_case.h" 13a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 14a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)class TestMediaStreamAudioTrack : public TestCase { 15a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) public: 16a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) explicit TestMediaStreamAudioTrack(TestingInstance* instance); 17a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) virtual ~TestMediaStreamAudioTrack(); 18a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 19a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) private: 20a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) // TestCase implementation. 21a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) virtual bool Init(); 22a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) virtual void RunTests(const std::string& filter); 23a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 24a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) // Overrides. 25a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) virtual void HandleMessage(const pp::Var& message_data); 26a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 275f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) // Test helpers. 285f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) std::string CheckConfigure(int32_t attrib_list[], int32_t expected_result); 295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) std::string CheckGetBuffer(int times, int expected_duration); 305f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 31a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) std::string TestCreate(); 32a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) std::string TestGetBuffer(); 3346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) std::string TestConfigure(); 346e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles) std::string TestConfigureClose(); 351320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci std::string TestVerifyWaveform(); 36a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 37a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) pp::MediaStreamAudioTrack audio_track_; 38a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 39a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) NestedEvent event_; 40a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)}; 41a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 4246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#endif // PPAPI_TESTS_TEST_MEDIA_STREAM_AUDIO_TRACK_H_ 43