summaryrefslogtreecommitdiff
path: root/unittest/gtest_libmm-radio.cpp
blob: bd3500ae17fbb045f9e65e2ca6c741704d16d0b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/*
 * Copyright (c) 2018 Samsung Electronics Co., Ltd All Rights Reserved
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


#include "gtest_libmm-radio.h"
#include "mm_error.h"
#include "mm_radio.h"

using ::testing::InitGoogleTest;
using ::testing::Test;
using ::testing::TestCase;

using namespace std;

int ret;
MMHandleType hradio;

static int _message_callback(int message, void *pParam, void *user_param)
{
	MMMessageParamType* param = (MMMessageParamType*)pParam;

	cout << "incoming message :" << message << endl;

	switch(message)
	{
	case MM_MESSAGE_STATE_CHANGED:
		cout << "MM_MESSAGE_STATE_CHANGED: current : " << param->state.current
			<< "old : " << param->state.previous << endl;
		break;
	case MM_MESSAGE_RADIO_SCAN_START:
		cout << "MM_MESSAGE_RADIO_SCAN_START" << endl;
		break;
	case MM_MESSAGE_RADIO_SCAN_INFO:
		cout << "MM_MESSAGE_RADIO_SCAN_INFO : freq : " << param->radio_scan.frequency
			<< endl;
		break;
	case MM_MESSAGE_RADIO_SCAN_STOP:
		cout << "MM_MESSAGE_RADIO_SCAN_STOP" << endl;
		break;
	case MM_MESSAGE_RADIO_SCAN_FINISH:
		cout << "MM_MESSAGE_RADIO_SCAN_FINISHED" << endl;
		break;
	case MM_MESSAGE_RADIO_SEEK_START:
		cout << "MM_MESSAGE_RADIO_SEEK_START" << endl;
		break;
	case MM_MESSAGE_RADIO_SEEK_FINISH:
		cout << "MM_MESSAGE_RADIO_SEEK_FINISHED : freq : " << param->radio_scan.frequency
			<< endl;
		break;
	default:
		cout << "ERROR : unknown message received!" << endl;
		break;
	}

	return 0;
}

class MMRadioTest : public ::testing::Test {
	protected:
		void SetUp() {
			ret = mm_radio_create(&hradio);
			ASSERT_EQ(ret, MM_ERROR_NONE) << "[FAILED] mm_radio_create";

			ret = mm_radio_set_message_callback(hradio, _message_callback, &hradio);
			ASSERT_EQ(ret, MM_ERROR_NONE) << "[FAILED] mm_radio_set_message_callback";
		}

		void TearDown() {
			ret = mm_radio_destroy(hradio);
			ASSERT_EQ(ret, MM_ERROR_NONE) << "[FAILED] mm_radio_destroy";
			return;
		}
};

TEST_F(MMRadioTest, mmradio_create_test)
{
	ASSERT_EQ(ret, MM_ERROR_NONE) << "[FAILED] mm_radio_create";
}

int main(int argc, char **argv)
{
	InitGoogleTest(&argc, argv);

	return RUN_ALL_TESTS();
}