FRDM K64F Metronome

Committer:
ram54288
Date:
Sun May 14 18:37:05 2017 +0000
Revision:
0:dbad57390bd1
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ram54288 0:dbad57390bd1 1 /*
ram54288 0:dbad57390bd1 2 * Copyright (c) 2015 ARM Limited. All rights reserved.
ram54288 0:dbad57390bd1 3 * SPDX-License-Identifier: Apache-2.0
ram54288 0:dbad57390bd1 4 * Licensed under the Apache License, Version 2.0 (the License); you may
ram54288 0:dbad57390bd1 5 * not use this file except in compliance with the License.
ram54288 0:dbad57390bd1 6 * You may obtain a copy of the License at
ram54288 0:dbad57390bd1 7 *
ram54288 0:dbad57390bd1 8 * http://www.apache.org/licenses/LICENSE-2.0
ram54288 0:dbad57390bd1 9 *
ram54288 0:dbad57390bd1 10 * Unless required by applicable law or agreed to in writing, software
ram54288 0:dbad57390bd1 11 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
ram54288 0:dbad57390bd1 12 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ram54288 0:dbad57390bd1 13 * See the License for the specific language governing permissions and
ram54288 0:dbad57390bd1 14 * limitations under the License.
ram54288 0:dbad57390bd1 15 */
ram54288 0:dbad57390bd1 16 #include "CppUTest/TestHarness.h"
ram54288 0:dbad57390bd1 17 #include "test_m2mserver.h"
ram54288 0:dbad57390bd1 18 #include "m2mobject_stub.h"
ram54288 0:dbad57390bd1 19 #include "m2mobjectinstance_stub.h"
ram54288 0:dbad57390bd1 20 #include "m2mresource_stub.h"
ram54288 0:dbad57390bd1 21 #include "m2mresourceinstance_stub.h"
ram54288 0:dbad57390bd1 22 #include "m2mbase_stub.h"
ram54288 0:dbad57390bd1 23 #include "nsdlaccesshelper_stub.h"
ram54288 0:dbad57390bd1 24
ram54288 0:dbad57390bd1 25 Test_M2MServer::Test_M2MServer()
ram54288 0:dbad57390bd1 26 {
ram54288 0:dbad57390bd1 27 M2MObject* obj = new M2MObject("name", "name");
ram54288 0:dbad57390bd1 28 m2mobject_stub::inst = new M2MObjectInstance(*obj,"name", "type", "name");
ram54288 0:dbad57390bd1 29 m2mresource_stub::bool_value = true;
ram54288 0:dbad57390bd1 30 m2mobjectinstance_stub::create_resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 31 "name",
ram54288 0:dbad57390bd1 32 "type",
ram54288 0:dbad57390bd1 33 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 34 false,
ram54288 0:dbad57390bd1 35 "name");
ram54288 0:dbad57390bd1 36 server = new M2MServer();
ram54288 0:dbad57390bd1 37
ram54288 0:dbad57390bd1 38 delete m2mobjectinstance_stub::create_resource;
ram54288 0:dbad57390bd1 39 m2mobjectinstance_stub::create_resource = NULL;
ram54288 0:dbad57390bd1 40 delete obj;
ram54288 0:dbad57390bd1 41 }
ram54288 0:dbad57390bd1 42
ram54288 0:dbad57390bd1 43 Test_M2MServer::~Test_M2MServer()
ram54288 0:dbad57390bd1 44 {
ram54288 0:dbad57390bd1 45 delete m2mobject_stub::inst;
ram54288 0:dbad57390bd1 46 m2mobject_stub::inst = NULL;
ram54288 0:dbad57390bd1 47
ram54288 0:dbad57390bd1 48 m2mobject_stub::clear();
ram54288 0:dbad57390bd1 49 m2mobjectinstance_stub::clear();
ram54288 0:dbad57390bd1 50 m2mresource_stub::clear();
ram54288 0:dbad57390bd1 51 m2mbase_stub::clear();
ram54288 0:dbad57390bd1 52 delete server;
ram54288 0:dbad57390bd1 53 }
ram54288 0:dbad57390bd1 54
ram54288 0:dbad57390bd1 55 void Test_M2MServer::test_create_resource_int()
ram54288 0:dbad57390bd1 56 {
ram54288 0:dbad57390bd1 57 m2mobjectinstance_stub::create_resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 58 "name",
ram54288 0:dbad57390bd1 59 "type",
ram54288 0:dbad57390bd1 60 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 61 false,
ram54288 0:dbad57390bd1 62 "name");
ram54288 0:dbad57390bd1 63
ram54288 0:dbad57390bd1 64 CHECK(server->create_resource(M2MServer::DefaultMinPeriod,10) != NULL);
ram54288 0:dbad57390bd1 65 CHECK(server->create_resource(M2MServer::DefaultMaxPeriod,10) != NULL);
ram54288 0:dbad57390bd1 66 CHECK(server->create_resource(M2MServer::DisableTimeout,10) != NULL);
ram54288 0:dbad57390bd1 67
ram54288 0:dbad57390bd1 68 CHECK(server->create_resource(M2MServer::ShortServerID,10) == NULL);
ram54288 0:dbad57390bd1 69 CHECK(server->create_resource(M2MServer::Lifetime,10) == NULL);
ram54288 0:dbad57390bd1 70 CHECK(server->create_resource(M2MServer::Disable,10) == NULL);
ram54288 0:dbad57390bd1 71 CHECK(server->create_resource(M2MServer::Binding,10) == NULL);
ram54288 0:dbad57390bd1 72 CHECK(server->create_resource(M2MServer::NotificationStorage,10) == NULL);
ram54288 0:dbad57390bd1 73 CHECK(server->create_resource(M2MServer::Binding,10) == NULL);
ram54288 0:dbad57390bd1 74 CHECK(server->create_resource(M2MServer::RegistrationUpdate,10) == NULL);
ram54288 0:dbad57390bd1 75
ram54288 0:dbad57390bd1 76 delete m2mobjectinstance_stub::create_resource;
ram54288 0:dbad57390bd1 77 m2mobjectinstance_stub::create_resource = NULL;
ram54288 0:dbad57390bd1 78 }
ram54288 0:dbad57390bd1 79
ram54288 0:dbad57390bd1 80 void Test_M2MServer::test_create_resource()
ram54288 0:dbad57390bd1 81 {
ram54288 0:dbad57390bd1 82 m2mobjectinstance_stub::create_resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 83 "name",
ram54288 0:dbad57390bd1 84 "type",
ram54288 0:dbad57390bd1 85 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 86 false,
ram54288 0:dbad57390bd1 87 "name");
ram54288 0:dbad57390bd1 88
ram54288 0:dbad57390bd1 89 CHECK(server->create_resource(M2MServer::Disable) != NULL);
ram54288 0:dbad57390bd1 90
ram54288 0:dbad57390bd1 91 CHECK(server->create_resource(M2MServer::DefaultMinPeriod) == NULL);
ram54288 0:dbad57390bd1 92 CHECK(server->create_resource(M2MServer::DefaultMaxPeriod) == NULL);
ram54288 0:dbad57390bd1 93 CHECK(server->create_resource(M2MServer::DefaultMaxPeriod) == NULL);
ram54288 0:dbad57390bd1 94 CHECK(server->create_resource(M2MServer::ShortServerID) == NULL);
ram54288 0:dbad57390bd1 95 CHECK(server->create_resource(M2MServer::Lifetime) == NULL);
ram54288 0:dbad57390bd1 96 CHECK(server->create_resource(M2MServer::DisableTimeout) == NULL);
ram54288 0:dbad57390bd1 97 CHECK(server->create_resource(M2MServer::Binding) == NULL);
ram54288 0:dbad57390bd1 98 CHECK(server->create_resource(M2MServer::NotificationStorage) == NULL);
ram54288 0:dbad57390bd1 99 CHECK(server->create_resource(M2MServer::RegistrationUpdate) == NULL);
ram54288 0:dbad57390bd1 100
ram54288 0:dbad57390bd1 101 delete m2mobjectinstance_stub::create_resource;
ram54288 0:dbad57390bd1 102 m2mobjectinstance_stub::create_resource = NULL;
ram54288 0:dbad57390bd1 103 }
ram54288 0:dbad57390bd1 104
ram54288 0:dbad57390bd1 105 void Test_M2MServer::test_delete_resource()
ram54288 0:dbad57390bd1 106 {
ram54288 0:dbad57390bd1 107 m2mobjectinstance_stub::bool_value = true;
ram54288 0:dbad57390bd1 108
ram54288 0:dbad57390bd1 109 CHECK(server->delete_resource(M2MServer::ShortServerID) == false);
ram54288 0:dbad57390bd1 110 CHECK(server->delete_resource(M2MServer::Binding) == false);
ram54288 0:dbad57390bd1 111 CHECK(server->delete_resource(M2MServer::NotificationStorage) == false);
ram54288 0:dbad57390bd1 112 CHECK(server->delete_resource(M2MServer::Lifetime) == false);
ram54288 0:dbad57390bd1 113 CHECK(server->delete_resource(M2MServer::RegistrationUpdate) == false);
ram54288 0:dbad57390bd1 114
ram54288 0:dbad57390bd1 115 CHECK(server->delete_resource(M2MServer::DefaultMinPeriod) == true);
ram54288 0:dbad57390bd1 116 CHECK(server->delete_resource(M2MServer::DefaultMaxPeriod) == true);
ram54288 0:dbad57390bd1 117 CHECK(server->delete_resource(M2MServer::DisableTimeout) == true);
ram54288 0:dbad57390bd1 118 CHECK(server->delete_resource(M2MServer::Disable) == true);
ram54288 0:dbad57390bd1 119 }
ram54288 0:dbad57390bd1 120
ram54288 0:dbad57390bd1 121 void Test_M2MServer::test_set_resource_value_int()
ram54288 0:dbad57390bd1 122 {
ram54288 0:dbad57390bd1 123 m2mbase_stub::bool_value = true;
ram54288 0:dbad57390bd1 124
ram54288 0:dbad57390bd1 125 m2mobjectinstance_stub::resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 126 "name",
ram54288 0:dbad57390bd1 127 "type",
ram54288 0:dbad57390bd1 128 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 129 false,
ram54288 0:dbad57390bd1 130 "name");
ram54288 0:dbad57390bd1 131
ram54288 0:dbad57390bd1 132 CHECK(server->set_resource_value(M2MServer::DefaultMinPeriod,10) == true);
ram54288 0:dbad57390bd1 133 CHECK(server->set_resource_value(M2MServer::DefaultMaxPeriod,10) == true);
ram54288 0:dbad57390bd1 134 CHECK(server->set_resource_value(M2MServer::DisableTimeout,10) == true);
ram54288 0:dbad57390bd1 135 CHECK(server->set_resource_value(M2MServer::ShortServerID,10) == true);
ram54288 0:dbad57390bd1 136 CHECK(server->set_resource_value(M2MServer::NotificationStorage,10) == true);
ram54288 0:dbad57390bd1 137 CHECK(server->set_resource_value(M2MServer::Lifetime,10) == true);
ram54288 0:dbad57390bd1 138
ram54288 0:dbad57390bd1 139 CHECK(server->set_resource_value(M2MServer::Binding,10) == false);
ram54288 0:dbad57390bd1 140 CHECK(server->set_resource_value(M2MServer::RegistrationUpdate,10) == false);
ram54288 0:dbad57390bd1 141 CHECK(server->set_resource_value(M2MServer::Disable,10) == false);
ram54288 0:dbad57390bd1 142
ram54288 0:dbad57390bd1 143 delete m2mobjectinstance_stub::resource;
ram54288 0:dbad57390bd1 144 m2mobjectinstance_stub::resource = NULL;
ram54288 0:dbad57390bd1 145 }
ram54288 0:dbad57390bd1 146
ram54288 0:dbad57390bd1 147 void Test_M2MServer::test_set_resource_value_string()
ram54288 0:dbad57390bd1 148 {
ram54288 0:dbad57390bd1 149 m2mresourceinstance_stub::bool_value = true;
ram54288 0:dbad57390bd1 150
ram54288 0:dbad57390bd1 151 m2mobjectinstance_stub::resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 152 "name",
ram54288 0:dbad57390bd1 153 "type",
ram54288 0:dbad57390bd1 154 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 155 false,
ram54288 0:dbad57390bd1 156 "name");
ram54288 0:dbad57390bd1 157
ram54288 0:dbad57390bd1 158 CHECK(server->set_resource_value(M2MServer::Binding,"test") == true);
ram54288 0:dbad57390bd1 159
ram54288 0:dbad57390bd1 160 CHECK(server->set_resource_value(M2MServer::DefaultMinPeriod,"test") == false);
ram54288 0:dbad57390bd1 161 CHECK(server->set_resource_value(M2MServer::DefaultMaxPeriod,"test") == false);
ram54288 0:dbad57390bd1 162 CHECK(server->set_resource_value(M2MServer::DisableTimeout,"test") == false);
ram54288 0:dbad57390bd1 163 CHECK(server->set_resource_value(M2MServer::ShortServerID,"test") == false);
ram54288 0:dbad57390bd1 164 CHECK(server->set_resource_value(M2MServer::NotificationStorage,"test") == false);
ram54288 0:dbad57390bd1 165 CHECK(server->set_resource_value(M2MServer::Lifetime,"test") == false);
ram54288 0:dbad57390bd1 166 CHECK(server->set_resource_value(M2MServer::RegistrationUpdate,"test") == false);
ram54288 0:dbad57390bd1 167 CHECK(server->set_resource_value(M2MServer::Disable,"test") == false);
ram54288 0:dbad57390bd1 168
ram54288 0:dbad57390bd1 169 delete m2mobjectinstance_stub::resource;
ram54288 0:dbad57390bd1 170 m2mobjectinstance_stub::resource = NULL;
ram54288 0:dbad57390bd1 171 }
ram54288 0:dbad57390bd1 172
ram54288 0:dbad57390bd1 173 void Test_M2MServer::test_resource_value_int()
ram54288 0:dbad57390bd1 174 {
ram54288 0:dbad57390bd1 175 uint8_t value[] = {"10"};
ram54288 0:dbad57390bd1 176 m2mresourceinstance_stub::value = (uint8_t*)malloc((uint32_t)sizeof(value));
ram54288 0:dbad57390bd1 177 memset(m2mresourceinstance_stub::value,0,(uint32_t)sizeof(value));
ram54288 0:dbad57390bd1 178 memcpy(m2mresourceinstance_stub::value,value,sizeof(value));
ram54288 0:dbad57390bd1 179 m2mresourceinstance_stub::int_value = (uint32_t)sizeof(value);
ram54288 0:dbad57390bd1 180
ram54288 0:dbad57390bd1 181 m2mobjectinstance_stub::resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 182 "name",
ram54288 0:dbad57390bd1 183 "type",
ram54288 0:dbad57390bd1 184 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 185 false,
ram54288 0:dbad57390bd1 186 "name");
ram54288 0:dbad57390bd1 187
ram54288 0:dbad57390bd1 188 CHECK(server->resource_value_int(M2MServer::ShortServerID) == 10);
ram54288 0:dbad57390bd1 189 CHECK(server->resource_value_int(M2MServer::DefaultMinPeriod) == 10);
ram54288 0:dbad57390bd1 190 CHECK(server->resource_value_int(M2MServer::DefaultMaxPeriod) == 10);
ram54288 0:dbad57390bd1 191 CHECK(server->resource_value_int(M2MServer::DisableTimeout) == 10);
ram54288 0:dbad57390bd1 192 CHECK(server->resource_value_int(M2MServer::NotificationStorage) == 10);
ram54288 0:dbad57390bd1 193 CHECK(server->resource_value_int(M2MServer::Lifetime) == 10);
ram54288 0:dbad57390bd1 194 CHECK(server->resource_value_int(M2MServer::Binding) == 0);
ram54288 0:dbad57390bd1 195 CHECK(server->resource_value_int(M2MServer::RegistrationUpdate) == 0);
ram54288 0:dbad57390bd1 196 CHECK(server->resource_value_int(M2MServer::Disable) == 0);
ram54288 0:dbad57390bd1 197
ram54288 0:dbad57390bd1 198 delete m2mobjectinstance_stub::resource;
ram54288 0:dbad57390bd1 199 m2mobjectinstance_stub::resource = NULL;
ram54288 0:dbad57390bd1 200
ram54288 0:dbad57390bd1 201 free(m2mresourceinstance_stub::value);
ram54288 0:dbad57390bd1 202 m2mresourceinstance_stub::value = NULL;
ram54288 0:dbad57390bd1 203 }
ram54288 0:dbad57390bd1 204
ram54288 0:dbad57390bd1 205 void Test_M2MServer::test_resource_value_string()
ram54288 0:dbad57390bd1 206 {
ram54288 0:dbad57390bd1 207 String test = "string";
ram54288 0:dbad57390bd1 208 uint8_t value[] = {"string"};
ram54288 0:dbad57390bd1 209
ram54288 0:dbad57390bd1 210 m2mresourceinstance_stub::value = (uint8_t*)malloc((uint32_t)sizeof(value));
ram54288 0:dbad57390bd1 211 memset(m2mresourceinstance_stub::value,0,(uint32_t)sizeof(value));
ram54288 0:dbad57390bd1 212 memcpy(m2mresourceinstance_stub::value,value,sizeof(value));
ram54288 0:dbad57390bd1 213 m2mresourceinstance_stub::int_value = (uint32_t)sizeof(value);
ram54288 0:dbad57390bd1 214
ram54288 0:dbad57390bd1 215 m2mobjectinstance_stub::resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 216 "name",
ram54288 0:dbad57390bd1 217 "type",
ram54288 0:dbad57390bd1 218 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 219 false,
ram54288 0:dbad57390bd1 220 "name");
ram54288 0:dbad57390bd1 221
ram54288 0:dbad57390bd1 222 CHECK(server->resource_value_string(M2MServer::Binding) == test);
ram54288 0:dbad57390bd1 223
ram54288 0:dbad57390bd1 224 CHECK(server->resource_value_string(M2MServer::Disable) == "");
ram54288 0:dbad57390bd1 225 CHECK(server->resource_value_string(M2MServer::RegistrationUpdate) == "");
ram54288 0:dbad57390bd1 226 CHECK(server->resource_value_string(M2MServer::Lifetime) == "");
ram54288 0:dbad57390bd1 227 CHECK(server->resource_value_string(M2MServer::NotificationStorage) == "");
ram54288 0:dbad57390bd1 228 CHECK(server->resource_value_string(M2MServer::DisableTimeout) == "");
ram54288 0:dbad57390bd1 229 CHECK(server->resource_value_string(M2MServer::DefaultMaxPeriod) == "");
ram54288 0:dbad57390bd1 230 CHECK(server->resource_value_string(M2MServer::DefaultMinPeriod) == "");
ram54288 0:dbad57390bd1 231 CHECK(server->resource_value_string(M2MServer::ShortServerID) == "");
ram54288 0:dbad57390bd1 232
ram54288 0:dbad57390bd1 233 delete m2mobjectinstance_stub::resource;
ram54288 0:dbad57390bd1 234 m2mobjectinstance_stub::resource = NULL;
ram54288 0:dbad57390bd1 235
ram54288 0:dbad57390bd1 236 free(m2mresourceinstance_stub::value);
ram54288 0:dbad57390bd1 237 m2mresourceinstance_stub::value = NULL;
ram54288 0:dbad57390bd1 238 }
ram54288 0:dbad57390bd1 239
ram54288 0:dbad57390bd1 240 void Test_M2MServer::test_is_resource_present()
ram54288 0:dbad57390bd1 241 {
ram54288 0:dbad57390bd1 242 m2mobjectinstance_stub::resource = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 243 "name",
ram54288 0:dbad57390bd1 244 "type",
ram54288 0:dbad57390bd1 245 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 246 false,
ram54288 0:dbad57390bd1 247 "name");
ram54288 0:dbad57390bd1 248
ram54288 0:dbad57390bd1 249 CHECK(server->is_resource_present(M2MServer::ShortServerID) == true);
ram54288 0:dbad57390bd1 250
ram54288 0:dbad57390bd1 251 delete m2mobjectinstance_stub::resource;
ram54288 0:dbad57390bd1 252 m2mobjectinstance_stub::resource = NULL;
ram54288 0:dbad57390bd1 253
ram54288 0:dbad57390bd1 254 CHECK(server->is_resource_present(M2MServer::DefaultMinPeriod) == false);
ram54288 0:dbad57390bd1 255 }
ram54288 0:dbad57390bd1 256
ram54288 0:dbad57390bd1 257 void Test_M2MServer::test_total_resource_count()
ram54288 0:dbad57390bd1 258 {
ram54288 0:dbad57390bd1 259 M2MResource *res = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 260 "name",
ram54288 0:dbad57390bd1 261 "type",
ram54288 0:dbad57390bd1 262 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 263 false,
ram54288 0:dbad57390bd1 264 "name");
ram54288 0:dbad57390bd1 265
ram54288 0:dbad57390bd1 266 m2mobjectinstance_stub::resource_list.push_back(res);
ram54288 0:dbad57390bd1 267 M2MResource *res2 = new M2MResource(*m2mobject_stub::inst,
ram54288 0:dbad57390bd1 268 "name",
ram54288 0:dbad57390bd1 269 "type",
ram54288 0:dbad57390bd1 270 M2MResourceInstance::STRING,
ram54288 0:dbad57390bd1 271 false,
ram54288 0:dbad57390bd1 272 "name");
ram54288 0:dbad57390bd1 273
ram54288 0:dbad57390bd1 274 m2mobjectinstance_stub::resource_list.push_back(res2);
ram54288 0:dbad57390bd1 275
ram54288 0:dbad57390bd1 276 CHECK(server->total_resource_count() == 2);
ram54288 0:dbad57390bd1 277
ram54288 0:dbad57390bd1 278 m2mobjectinstance_stub::resource_list.clear();
ram54288 0:dbad57390bd1 279
ram54288 0:dbad57390bd1 280 delete res2;
ram54288 0:dbad57390bd1 281 delete res;
ram54288 0:dbad57390bd1 282 }