Add thread_network_set_channel API with unittest 34/273134/1
authorhyunuk.tak <hyunuk.tak@samsung.com>
Wed, 30 Mar 2022 02:08:54 +0000 (11:08 +0900)
committerhyunuk.tak <hyunuk.tak@samsung.com>
Thu, 31 Mar 2022 00:59:51 +0000 (09:59 +0900)
Change-Id: I69ba6fcd0bbd0c64d799106a7f33a0e4b80ad76b
Signed-off-by: hyunuk.tak <hyunuk.tak@samsung.com>
src/thread-network.c
tests/unittest/thread-unittest-network.cpp

index 150b8f1..4358f09 100644 (file)
@@ -167,6 +167,22 @@ int thread_network_set_pskc(thread_network_h network, const char *pskc)
        return THREAD_ERROR_NONE;
 }
 
+int thread_network_set_channel(thread_network_h network, uint32_t channel)
+{
+       FUNC_ENTRY;
+       THREAD_CHECK_SUPPORTED_FEATURE(THREAD_FEATURE_COMMON);
+       THREAD_CHECK_INIT_STATUS();
+       THREAD_VALIDATE_INPUT_PARAMETER(network);
+
+       THREAD_DBG("Network channel: 0x%8.8x", channel);
+
+       thread_network_s *current_network = network;
+       current_network->channel = channel;
+
+       FUNC_EXIT;
+       return THREAD_ERROR_NONE;
+}
+
 /* Network leader/Creator */
 int thread_network_create_operational_network(thread_instance_h instance,
        const char *name, const char *key, const char *pskc, uint32_t channel,
index c4ecbc4..602a49a 100644 (file)
 class ThreadNetworkTest : public ::testing::Test
 {
 public:
-       const char *THREAD_NETWORK_DEFAULT_NAME = "TizenOpenThread";
-       const char *THREAD_NETWORK_DEFAULT_KEY = "c03aa2d3c869847b0e7f2ca288efd251";
-       const char *THREAD_NETWORK_DEFAULT_PSKC = "19d3bd4ee76baad7ff2da29c87c67452";
+       const char *NETWORK_DUMMY_NAME = "TizenOpenThread";
+       const char *NETWORK_DUMMY_KEY = "c03aa2d3c869847b0e7f2ca288efd251";
+       const char *NETWORK_DUMMY_PSKC = "19d3bd4ee76baad7ff2da29c87c67452";
+       const uint32_t NETWORK_DUMMY_CHANNEL = 15;
 
        thread_instance_h instance;
        thread_network_h network;
@@ -366,58 +367,78 @@ TEST_F(ThreadNetworkTest, SetNameNotInitialized)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_deinitialize());
        EXPECT_EQ(THREAD_ERROR_NOT_INITIALIZED,
-               thread_network_set_name(network, THREAD_NETWORK_DEFAULT_NAME));
+               thread_network_set_name(network, NETWORK_DUMMY_NAME));
 }
 
 TEST_F(ThreadNetworkTest, SetNameInvalidParameter)
 {
        EXPECT_EQ(THREAD_ERROR_INVALID_PARAMETER,
-               thread_network_set_name(nullptr, THREAD_NETWORK_DEFAULT_NAME));
+               thread_network_set_name(nullptr, NETWORK_DUMMY_NAME));
 }
 
 TEST_F(ThreadNetworkTest, SetNameErrorNone)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_network_create(&network));
        EXPECT_EQ(THREAD_ERROR_NONE,
-               thread_network_set_name(network, THREAD_NETWORK_DEFAULT_NAME));
+               thread_network_set_name(network, NETWORK_DUMMY_NAME));
 }
 
 TEST_F(ThreadNetworkTest, SetKeyNotInitialized)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_deinitialize());
        EXPECT_EQ(THREAD_ERROR_NOT_INITIALIZED,
-               thread_network_set_key(network, THREAD_NETWORK_DEFAULT_KEY));
+               thread_network_set_key(network, NETWORK_DUMMY_KEY));
 }
 
 TEST_F(ThreadNetworkTest, SetKeyInvalidParameter)
 {
        EXPECT_EQ(THREAD_ERROR_INVALID_PARAMETER,
-               thread_network_set_key(nullptr, THREAD_NETWORK_DEFAULT_KEY));
+               thread_network_set_key(nullptr, NETWORK_DUMMY_KEY));
 }
 
 TEST_F(ThreadNetworkTest, SetKeyErrorNone)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_network_create(&network));
        EXPECT_EQ(THREAD_ERROR_NONE,
-               thread_network_set_key(network, THREAD_NETWORK_DEFAULT_KEY));
+               thread_network_set_key(network, NETWORK_DUMMY_KEY));
 }
 
 TEST_F(ThreadNetworkTest, SetPskcNotInitialized)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_deinitialize());
        EXPECT_EQ(THREAD_ERROR_NOT_INITIALIZED,
-               thread_network_set_pskc(network, THREAD_NETWORK_DEFAULT_PSKC));
+               thread_network_set_pskc(network, NETWORK_DUMMY_PSKC));
 }
 
 TEST_F(ThreadNetworkTest, SetPskcInvalidParameter)
 {
        EXPECT_EQ(THREAD_ERROR_INVALID_PARAMETER,
-               thread_network_set_pskc(nullptr, THREAD_NETWORK_DEFAULT_PSKC));
+               thread_network_set_pskc(nullptr, NETWORK_DUMMY_PSKC));
 }
 
 TEST_F(ThreadNetworkTest, SetPskcErrorNone)
 {
        EXPECT_EQ(THREAD_ERROR_NONE, thread_network_create(&network));
        EXPECT_EQ(THREAD_ERROR_NONE,
-               thread_network_set_pskc(network, THREAD_NETWORK_DEFAULT_PSKC));
+               thread_network_set_pskc(network, NETWORK_DUMMY_PSKC));
+}
+
+TEST_F(ThreadNetworkTest, SetChannelNotInitialized)
+{
+       EXPECT_EQ(THREAD_ERROR_NONE, thread_deinitialize());
+       EXPECT_EQ(THREAD_ERROR_NOT_INITIALIZED,
+               thread_network_set_channel(network, NETWORK_DUMMY_CHANNEL));
+}
+
+TEST_F(ThreadNetworkTest, SetChannelInvalidParameter)
+{
+       EXPECT_EQ(THREAD_ERROR_INVALID_PARAMETER,
+               thread_network_set_channel(nullptr, NETWORK_DUMMY_CHANNEL));
+}
+
+TEST_F(ThreadNetworkTest, SetChannelErrorNone)
+{
+       EXPECT_EQ(THREAD_ERROR_NONE, thread_network_create(&network));
+       EXPECT_EQ(THREAD_ERROR_NONE,
+               thread_network_set_channel(network, NETWORK_DUMMY_CHANNEL));
 }
\ No newline at end of file