• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #ifndef WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_TEST_DEFINES_H
12 #define WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_TEST_DEFINES_H
13 
14 #include "webrtc/common_types.h"
15 #include "webrtc/modules/audio_device/include/audio_device.h"
16 #include "webrtc/modules/utility/include/process_thread.h"
17 #include "webrtc/system_wrappers/include/trace.h"
18 
19 #ifdef _WIN32
20 #define MACRO_DEFAULT_DEVICE AudioDeviceModule::kDefaultDevice
21 #define MACRO_DEFAULT_COMMUNICATION_DEVICE AudioDeviceModule::kDefaultCommunicationDevice
22 #else
23 #define MACRO_DEFAULT_DEVICE 0
24 #define MACRO_DEFAULT_COMMUNICATION_DEVICE 0
25 #endif
26 
27 #ifdef ANDROID
28 #include <android/log.h>
29 #define LOG_TAG "WebRtc ADM TEST"
30 #define TEST_LOG(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
31 #define TEST_LOG_ERROR(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
32 #else
33 #define TEST_LOG printf
34 #define TEST_LOG_ERROR(...) fprintf(stderr, __VA_ARGS__)
35 #endif
36 
37 static int warningCount = 0;
38 
39 #define RESET_TEST                                              \
40     do {                                                        \
41         warningCount = 0;                                       \
42     } while(0)                                                  \
43 
44 #define PRINT_ERR_MSG(msg)                                      \
45     do {                                                        \
46         TEST_LOG_ERROR("Error at line %i of %s\n%s",            \
47             __LINE__, __FILE__, msg);                           \
48     } while(0)
49 
50 #define WARNING(expr)                                           \
51     do {                                                        \
52         if (!(expr)) {                                          \
53             TEST_LOG_ERROR("WARNING #%d: at line %i\n\n",       \
54                            warningCount+1, __LINE__);           \
55             warningCount++;                                     \
56         }                                                       \
57     } while(0)
58 
59 #define PRINT_TEST_RESULTS                                      \
60     do {                                                        \
61         if (warningCount > 0)                                   \
62         {                                                       \
63             TEST_LOG(">> %d warnings <<\n\n",                   \
64                      warningCount);                             \
65         }                                                       \
66     } while(0)
67 
68 // Helper functions
69 // For iPhone, they are defined in iPhone specific test code.
70 // For Android, they are defined in API test only (since both
71 //   API and Func tests are built into the same lib).
72 // For other, they are defined in both API test and Func test.
73 const char* GetFilename(const char* filename);
74 const char* GetResource(const char* resource);
75 
76 #endif  // WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_TEST_DEFINES_H
77