• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
13 namespace base {
14 class MessageLoop;
15 }
16 
17 namespace media {
18 
19 const int kTestAudioKey = 1000;
20 
21 const 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 
25 class 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 
num_play_requests()34   int num_play_requests() const { return num_play_requests_; }
num_stop_requests()35   int num_stop_requests() const { return num_stop_requests_; }
cursor()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