1// Copyright 2013 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 MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 6#define MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 7 8#include "base/basictypes.h" 9#include "base/callback.h" 10#include "base/compiler_specific.h" 11#include "media/audio/sounds/audio_stream_handler.h" 12 13namespace base { 14class MessageLoop; 15} 16 17namespace media { 18 19const int kTestAudioKey = 1000; 20 21const char kTestAudioData[] = "RIFF\x26\x00\x00\x00WAVEfmt \x10\x00\x00\x00" 22 "\x01\x00\x02\x00\x80\xbb\x00\x00\x00\x77\x01\x00\x02\x00\x10\x00" 23 "data\x04\x00\x00\x00\x01\x00\x01\x00"; 24 25class TestObserver : public AudioStreamHandler::TestObserver { 26 public: 27 TestObserver(const base::Closure& quit); 28 virtual ~TestObserver(); 29 30 // AudioStreamHandler::TestObserver implementation: 31 virtual void OnPlay() OVERRIDE; 32 virtual void OnStop(size_t cursor) OVERRIDE; 33 34 int num_play_requests() const { return num_play_requests_; } 35 int num_stop_requests() const { return num_stop_requests_; } 36 int cursor() const { return cursor_; } 37 38 private: 39 base::MessageLoop* loop_; 40 base::Closure quit_; 41 42 int num_play_requests_; 43 int num_stop_requests_; 44 int cursor_; 45 46 DISALLOW_COPY_AND_ASSIGN(TestObserver); 47}; 48 49} // namespace media 50 51#endif // MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 52