Donald Meyers / Mbed OS evan
Committer:
djmeyers
Date:
Sat Mar 18 22:37:16 2017 +0000
Revision:
0:06ee5f8a484a
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
djmeyers 0:06ee5f8a484a 1 /*
djmeyers 0:06ee5f8a484a 2 * Copyright (c) 2015 ARM Limited. All rights reserved.
djmeyers 0:06ee5f8a484a 3 * SPDX-License-Identifier: Apache-2.0
djmeyers 0:06ee5f8a484a 4 * Licensed under the Apache License, Version 2.0 (the License); you may
djmeyers 0:06ee5f8a484a 5 * not use this file except in compliance with the License.
djmeyers 0:06ee5f8a484a 6 * You may obtain a copy of the License at
djmeyers 0:06ee5f8a484a 7 *
djmeyers 0:06ee5f8a484a 8 * http://www.apache.org/licenses/LICENSE-2.0
djmeyers 0:06ee5f8a484a 9 *
djmeyers 0:06ee5f8a484a 10 * Unless required by applicable law or agreed to in writing, software
djmeyers 0:06ee5f8a484a 11 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
djmeyers 0:06ee5f8a484a 12 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
djmeyers 0:06ee5f8a484a 13 * See the License for the specific language governing permissions and
djmeyers 0:06ee5f8a484a 14 * limitations under the License.
djmeyers 0:06ee5f8a484a 15 */
djmeyers 0:06ee5f8a484a 16 #include "CppUTest/TestHarness.h"
djmeyers 0:06ee5f8a484a 17 #include "test_m2mresource.h"
djmeyers 0:06ee5f8a484a 18 #include "CppUTest/MemoryLeakDetectorMallocMacros.h"
djmeyers 0:06ee5f8a484a 19 #include "m2mbase_stub.h"
djmeyers 0:06ee5f8a484a 20 #include "m2mresourceinstance_stub.h"
djmeyers 0:06ee5f8a484a 21 #include "m2mobjectinstance_stub.h"
djmeyers 0:06ee5f8a484a 22 #include "m2mtlvdeserializer_stub.h"
djmeyers 0:06ee5f8a484a 23 #include "m2mreporthandler_stub.h"
djmeyers 0:06ee5f8a484a 24 #include "m2mobject_stub.h"
djmeyers 0:06ee5f8a484a 25 #include "common_stub.h"
djmeyers 0:06ee5f8a484a 26 #include "m2mreporthandler.h"
djmeyers 0:06ee5f8a484a 27
djmeyers 0:06ee5f8a484a 28 class TestReportObserver : public M2MReportObserver{
djmeyers 0:06ee5f8a484a 29 public :
djmeyers 0:06ee5f8a484a 30 TestReportObserver() {}
djmeyers 0:06ee5f8a484a 31 ~TestReportObserver() {}
djmeyers 0:06ee5f8a484a 32 void observation_to_be_sent(m2m::Vector<uint16_t>,bool){ }
djmeyers 0:06ee5f8a484a 33 };
djmeyers 0:06ee5f8a484a 34
djmeyers 0:06ee5f8a484a 35 class Handler : public M2MObservationHandler {
djmeyers 0:06ee5f8a484a 36
djmeyers 0:06ee5f8a484a 37 public:
djmeyers 0:06ee5f8a484a 38
djmeyers 0:06ee5f8a484a 39 Handler(){}
djmeyers 0:06ee5f8a484a 40 ~Handler(){}
djmeyers 0:06ee5f8a484a 41 void observation_to_be_sent(M2MBase *, uint16_t,m2m::Vector<uint16_t>,bool){
djmeyers 0:06ee5f8a484a 42 visited = true;
djmeyers 0:06ee5f8a484a 43 }
djmeyers 0:06ee5f8a484a 44 void send_delayed_response(M2MBase *){}
djmeyers 0:06ee5f8a484a 45 void resource_to_be_deleted(M2MBase *){visited=true;}
djmeyers 0:06ee5f8a484a 46 void remove_object(M2MBase *){visited = true;}
djmeyers 0:06ee5f8a484a 47 void value_updated(M2MBase *,const String&){visited = true;}
djmeyers 0:06ee5f8a484a 48
djmeyers 0:06ee5f8a484a 49 void clear() {visited = false;}
djmeyers 0:06ee5f8a484a 50 bool visited;
djmeyers 0:06ee5f8a484a 51 };
djmeyers 0:06ee5f8a484a 52
djmeyers 0:06ee5f8a484a 53 Test_M2MResource::Test_M2MResource()
djmeyers 0:06ee5f8a484a 54 {
djmeyers 0:06ee5f8a484a 55 handler = new Handler();
djmeyers 0:06ee5f8a484a 56 object = new M2MObject("name", "name");
djmeyers 0:06ee5f8a484a 57 object_instance = new M2MObjectInstance(*object, "name", "type", "");
djmeyers 0:06ee5f8a484a 58 resource = new M2MResource(*object_instance,
djmeyers 0:06ee5f8a484a 59 "name","resource_type",
djmeyers 0:06ee5f8a484a 60 M2MResourceInstance::INTEGER,false, "name");
djmeyers 0:06ee5f8a484a 61 }
djmeyers 0:06ee5f8a484a 62
djmeyers 0:06ee5f8a484a 63 Test_M2MResource::~Test_M2MResource()
djmeyers 0:06ee5f8a484a 64 {
djmeyers 0:06ee5f8a484a 65 delete object;
djmeyers 0:06ee5f8a484a 66 delete object_instance;
djmeyers 0:06ee5f8a484a 67 delete resource;
djmeyers 0:06ee5f8a484a 68 delete handler;
djmeyers 0:06ee5f8a484a 69 m2mtlvdeserializer_stub::clear();
djmeyers 0:06ee5f8a484a 70 }
djmeyers 0:06ee5f8a484a 71
djmeyers 0:06ee5f8a484a 72 void Test_M2MResource::test_static_resource()
djmeyers 0:06ee5f8a484a 73 {
djmeyers 0:06ee5f8a484a 74 u_int8_t value[] = {"value"};
djmeyers 0:06ee5f8a484a 75 M2MResource *res = new M2MResource(*m2mobject_stub::inst,
djmeyers 0:06ee5f8a484a 76 "name",
djmeyers 0:06ee5f8a484a 77 "resource_type",
djmeyers 0:06ee5f8a484a 78 M2MResourceInstance::INTEGER,
djmeyers 0:06ee5f8a484a 79 value,
djmeyers 0:06ee5f8a484a 80 (uint32_t)sizeof(value),"name");
djmeyers 0:06ee5f8a484a 81
djmeyers 0:06ee5f8a484a 82 CHECK(res != NULL);
djmeyers 0:06ee5f8a484a 83 delete res;
djmeyers 0:06ee5f8a484a 84
djmeyers 0:06ee5f8a484a 85 }
djmeyers 0:06ee5f8a484a 86
djmeyers 0:06ee5f8a484a 87 void Test_M2MResource::test_base_type()
djmeyers 0:06ee5f8a484a 88 {
djmeyers 0:06ee5f8a484a 89 m2mresourceinstance_stub::base_type = M2MBase::Resource;
djmeyers 0:06ee5f8a484a 90 CHECK(M2MBase::Resource == resource->base_type());
djmeyers 0:06ee5f8a484a 91 }
djmeyers 0:06ee5f8a484a 92
djmeyers 0:06ee5f8a484a 93 void Test_M2MResource::test_muliptle_instances()
djmeyers 0:06ee5f8a484a 94 {
djmeyers 0:06ee5f8a484a 95 CHECK(false == resource->supports_multiple_instances());
djmeyers 0:06ee5f8a484a 96 }
djmeyers 0:06ee5f8a484a 97
djmeyers 0:06ee5f8a484a 98 void Test_M2MResource::test_handle_observation_attribute()
djmeyers 0:06ee5f8a484a 99 {
djmeyers 0:06ee5f8a484a 100 char *d = "s";
djmeyers 0:06ee5f8a484a 101
djmeyers 0:06ee5f8a484a 102 m2mresourceinstance_stub::resource_type = M2MResourceInstance::INTEGER;
djmeyers 0:06ee5f8a484a 103 CHECK(false == resource->handle_observation_attribute(d));
djmeyers 0:06ee5f8a484a 104
djmeyers 0:06ee5f8a484a 105 m2mresourceinstance_stub::resource_type = M2MResourceInstance::FLOAT;
djmeyers 0:06ee5f8a484a 106 CHECK(false == resource->handle_observation_attribute(d));
djmeyers 0:06ee5f8a484a 107
djmeyers 0:06ee5f8a484a 108 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 109 "name",
djmeyers 0:06ee5f8a484a 110 "type",
djmeyers 0:06ee5f8a484a 111 M2MResourceInstance::INTEGER,
djmeyers 0:06ee5f8a484a 112 0,
djmeyers 0:06ee5f8a484a 113 "name",
djmeyers 0:06ee5f8a484a 114 false);
djmeyers 0:06ee5f8a484a 115
djmeyers 0:06ee5f8a484a 116 resource->add_resource_instance(res);
djmeyers 0:06ee5f8a484a 117
djmeyers 0:06ee5f8a484a 118 TestReportObserver obs;
djmeyers 0:06ee5f8a484a 119 m2mbase_stub::report = new M2MReportHandler(obs);
djmeyers 0:06ee5f8a484a 120
djmeyers 0:06ee5f8a484a 121 m2mbase_stub::bool_value = true;
djmeyers 0:06ee5f8a484a 122 CHECK(false == resource->handle_observation_attribute(d));
djmeyers 0:06ee5f8a484a 123
djmeyers 0:06ee5f8a484a 124 resource->_resource_type = M2MResourceInstance::INTEGER;
djmeyers 0:06ee5f8a484a 125 m2mreporthandler_stub::bool_return = true;
djmeyers 0:06ee5f8a484a 126 CHECK(true == resource->handle_observation_attribute(d));
djmeyers 0:06ee5f8a484a 127
djmeyers 0:06ee5f8a484a 128 m2mbase_stub::bool_value = false;
djmeyers 0:06ee5f8a484a 129 CHECK(true == resource->handle_observation_attribute(d));
djmeyers 0:06ee5f8a484a 130
djmeyers 0:06ee5f8a484a 131 delete m2mbase_stub::report;
djmeyers 0:06ee5f8a484a 132 m2mbase_stub::report = NULL;
djmeyers 0:06ee5f8a484a 133 }
djmeyers 0:06ee5f8a484a 134
djmeyers 0:06ee5f8a484a 135 void Test_M2MResource::test_add_resource_instance()
djmeyers 0:06ee5f8a484a 136 {
djmeyers 0:06ee5f8a484a 137 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 138 "name",
djmeyers 0:06ee5f8a484a 139 "type",
djmeyers 0:06ee5f8a484a 140 M2MResourceInstance::INTEGER,
djmeyers 0:06ee5f8a484a 141 0,
djmeyers 0:06ee5f8a484a 142 "name",
djmeyers 0:06ee5f8a484a 143 false);
djmeyers 0:06ee5f8a484a 144 resource->add_resource_instance(res);
djmeyers 0:06ee5f8a484a 145 CHECK(resource->_resource_instance_list.size() == 1);
djmeyers 0:06ee5f8a484a 146 }
djmeyers 0:06ee5f8a484a 147
djmeyers 0:06ee5f8a484a 148 void Test_M2MResource::test_remove_resource_instance()
djmeyers 0:06ee5f8a484a 149 {
djmeyers 0:06ee5f8a484a 150 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 151 "name",
djmeyers 0:06ee5f8a484a 152 "type",
djmeyers 0:06ee5f8a484a 153 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 154 0,
djmeyers 0:06ee5f8a484a 155 "name",
djmeyers 0:06ee5f8a484a 156 false);
djmeyers 0:06ee5f8a484a 157 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 158 CHECK(resource->remove_resource_instance(0) == true);
djmeyers 0:06ee5f8a484a 159 }
djmeyers 0:06ee5f8a484a 160
djmeyers 0:06ee5f8a484a 161 void Test_M2MResource::test_resource_instance()
djmeyers 0:06ee5f8a484a 162 {
djmeyers 0:06ee5f8a484a 163 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 164 "name",
djmeyers 0:06ee5f8a484a 165 "type",
djmeyers 0:06ee5f8a484a 166 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 167 0,
djmeyers 0:06ee5f8a484a 168 "name",
djmeyers 0:06ee5f8a484a 169 false);
djmeyers 0:06ee5f8a484a 170 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 171 CHECK(resource->resource_instance(0) != NULL);
djmeyers 0:06ee5f8a484a 172 }
djmeyers 0:06ee5f8a484a 173
djmeyers 0:06ee5f8a484a 174 void Test_M2MResource::test_resource_instances()
djmeyers 0:06ee5f8a484a 175 {
djmeyers 0:06ee5f8a484a 176 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 177 "name",
djmeyers 0:06ee5f8a484a 178 "type",
djmeyers 0:06ee5f8a484a 179 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 180 0,
djmeyers 0:06ee5f8a484a 181 "name",
djmeyers 0:06ee5f8a484a 182 false);
djmeyers 0:06ee5f8a484a 183 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 184 M2MResourceInstanceList list = resource->resource_instances();
djmeyers 0:06ee5f8a484a 185 CHECK(list.size() ==1);
djmeyers 0:06ee5f8a484a 186 }
djmeyers 0:06ee5f8a484a 187
djmeyers 0:06ee5f8a484a 188 void Test_M2MResource::test_resource_instance_count()
djmeyers 0:06ee5f8a484a 189 {
djmeyers 0:06ee5f8a484a 190 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 191 "name",
djmeyers 0:06ee5f8a484a 192 "type",
djmeyers 0:06ee5f8a484a 193 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 194 0,
djmeyers 0:06ee5f8a484a 195 "name",
djmeyers 0:06ee5f8a484a 196 false);
djmeyers 0:06ee5f8a484a 197 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 198 CHECK(resource->resource_instance_count() ==1);
djmeyers 0:06ee5f8a484a 199 }
djmeyers 0:06ee5f8a484a 200
djmeyers 0:06ee5f8a484a 201 void Test_M2MResource::test_add_observation_level()
djmeyers 0:06ee5f8a484a 202 {
djmeyers 0:06ee5f8a484a 203 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 204 "name",
djmeyers 0:06ee5f8a484a 205 "type",
djmeyers 0:06ee5f8a484a 206 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 207 0,
djmeyers 0:06ee5f8a484a 208 "name",
djmeyers 0:06ee5f8a484a 209 false);
djmeyers 0:06ee5f8a484a 210 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 211
djmeyers 0:06ee5f8a484a 212 M2MBase::Observation obs_level = M2MBase::R_Attribute;
djmeyers 0:06ee5f8a484a 213
djmeyers 0:06ee5f8a484a 214 resource->add_observation_level(obs_level);
djmeyers 0:06ee5f8a484a 215 }
djmeyers 0:06ee5f8a484a 216
djmeyers 0:06ee5f8a484a 217 void Test_M2MResource::test_remove_observation_level()
djmeyers 0:06ee5f8a484a 218 {
djmeyers 0:06ee5f8a484a 219 M2MResourceInstance *res = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 220 "name",
djmeyers 0:06ee5f8a484a 221 "type",
djmeyers 0:06ee5f8a484a 222 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 223 0,
djmeyers 0:06ee5f8a484a 224 "name",
djmeyers 0:06ee5f8a484a 225 false);
djmeyers 0:06ee5f8a484a 226 resource->_resource_instance_list.push_back(res);
djmeyers 0:06ee5f8a484a 227
djmeyers 0:06ee5f8a484a 228 M2MBase::Observation obs_level = M2MBase::R_Attribute;
djmeyers 0:06ee5f8a484a 229
djmeyers 0:06ee5f8a484a 230 resource->remove_observation_level(obs_level);
djmeyers 0:06ee5f8a484a 231 }
djmeyers 0:06ee5f8a484a 232
djmeyers 0:06ee5f8a484a 233 void Test_M2MResource::test_handle_get_request()
djmeyers 0:06ee5f8a484a 234 {
djmeyers 0:06ee5f8a484a 235 uint8_t value[] = {"name"};
djmeyers 0:06ee5f8a484a 236 sn_coap_hdr_s *coap_header = (sn_coap_hdr_s *)malloc(sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 237 memset(coap_header, 0, sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 238
djmeyers 0:06ee5f8a484a 239 coap_header->uri_path_ptr = value;
djmeyers 0:06ee5f8a484a 240 coap_header->uri_path_len = sizeof(value);
djmeyers 0:06ee5f8a484a 241
djmeyers 0:06ee5f8a484a 242 coap_header->msg_code = COAP_MSG_CODE_REQUEST_GET;
djmeyers 0:06ee5f8a484a 243
djmeyers 0:06ee5f8a484a 244 common_stub::int_value = 0;
djmeyers 0:06ee5f8a484a 245 m2mbase_stub::string_value = "name";
djmeyers 0:06ee5f8a484a 246
djmeyers 0:06ee5f8a484a 247 m2mbase_stub::operation = M2MBase::GET_ALLOWED;
djmeyers 0:06ee5f8a484a 248 m2mbase_stub::uint8_value = 200;
djmeyers 0:06ee5f8a484a 249
djmeyers 0:06ee5f8a484a 250 common_stub::coap_header = (sn_coap_hdr_ *)malloc(sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 251 memset(common_stub::coap_header,0,sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 252 common_stub::coap_header->options_list_ptr = (sn_coap_options_list_s*)malloc(sizeof(sn_coap_options_list_s));
djmeyers 0:06ee5f8a484a 253
djmeyers 0:06ee5f8a484a 254 coap_header->token_ptr = (uint8_t*)malloc(sizeof(value));
djmeyers 0:06ee5f8a484a 255 memcpy(coap_header->token_ptr, value, sizeof(value));
djmeyers 0:06ee5f8a484a 256
djmeyers 0:06ee5f8a484a 257 coap_header->options_list_ptr = (sn_coap_options_list_s*)malloc(sizeof(sn_coap_options_list_s));
djmeyers 0:06ee5f8a484a 258 coap_header->options_list_ptr->observe = 0;
djmeyers 0:06ee5f8a484a 259
djmeyers 0:06ee5f8a484a 260 coap_header->content_format = sn_coap_content_format_e(110);
djmeyers 0:06ee5f8a484a 261
djmeyers 0:06ee5f8a484a 262 m2mresourceinstance_stub::header = NULL;
djmeyers 0:06ee5f8a484a 263
djmeyers 0:06ee5f8a484a 264 M2MResourceInstance *res_instance = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 265 "name",
djmeyers 0:06ee5f8a484a 266 "res2",
djmeyers 0:06ee5f8a484a 267 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 268 0,
djmeyers 0:06ee5f8a484a 269 "name",
djmeyers 0:06ee5f8a484a 270 false);
djmeyers 0:06ee5f8a484a 271
djmeyers 0:06ee5f8a484a 272 M2MResourceInstance *res_instance_1 = new M2MResourceInstance(*m2mobjectinstance_stub::resource,
djmeyers 0:06ee5f8a484a 273 "name",
djmeyers 0:06ee5f8a484a 274 "res2",
djmeyers 0:06ee5f8a484a 275 M2MResourceInstance::STRING,
djmeyers 0:06ee5f8a484a 276 0,
djmeyers 0:06ee5f8a484a 277 "name",
djmeyers 0:06ee5f8a484a 278 false);
djmeyers 0:06ee5f8a484a 279 CHECK(resource->handle_get_request(NULL,coap_header,handler) == NULL);
djmeyers 0:06ee5f8a484a 280
djmeyers 0:06ee5f8a484a 281 resource->_has_multiple_instances = true;
djmeyers 0:06ee5f8a484a 282 resource->add_resource_instance(res_instance);
djmeyers 0:06ee5f8a484a 283 resource->add_resource_instance(res_instance_1);
djmeyers 0:06ee5f8a484a 284
djmeyers 0:06ee5f8a484a 285 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 286
djmeyers 0:06ee5f8a484a 287
djmeyers 0:06ee5f8a484a 288 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 289
djmeyers 0:06ee5f8a484a 290 // Not OMA TLV or JSON
djmeyers 0:06ee5f8a484a 291 common_stub::coap_header->content_format = sn_coap_content_format_e(-1);
djmeyers 0:06ee5f8a484a 292 m2mbase_stub::uint8_value = 110;
djmeyers 0:06ee5f8a484a 293 coap_header->content_format = sn_coap_content_format_e(-1);
djmeyers 0:06ee5f8a484a 294
djmeyers 0:06ee5f8a484a 295 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 296
djmeyers 0:06ee5f8a484a 297 // OMA TLV
djmeyers 0:06ee5f8a484a 298 m2mbase_stub::uint8_value = 99;
djmeyers 0:06ee5f8a484a 299 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 300
djmeyers 0:06ee5f8a484a 301 // OMA JSON
djmeyers 0:06ee5f8a484a 302 m2mbase_stub::uint8_value = 100;
djmeyers 0:06ee5f8a484a 303 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 304
djmeyers 0:06ee5f8a484a 305 coap_header->options_list_ptr->observe = 0;
djmeyers 0:06ee5f8a484a 306 m2mbase_stub::uint16_value = 0x1c1c;
djmeyers 0:06ee5f8a484a 307 m2mbase_stub::bool_value = true;
djmeyers 0:06ee5f8a484a 308
djmeyers 0:06ee5f8a484a 309 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 310
djmeyers 0:06ee5f8a484a 311 m2mbase_stub::uint16_value = 10;
djmeyers 0:06ee5f8a484a 312 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 313
djmeyers 0:06ee5f8a484a 314 coap_header->options_list_ptr->observe = 0;
djmeyers 0:06ee5f8a484a 315
djmeyers 0:06ee5f8a484a 316 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 317
djmeyers 0:06ee5f8a484a 318 coap_header->options_list_ptr->observe = 1;
djmeyers 0:06ee5f8a484a 319 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 320
djmeyers 0:06ee5f8a484a 321 // Not observable
djmeyers 0:06ee5f8a484a 322 m2mbase_stub::bool_value = false;
djmeyers 0:06ee5f8a484a 323 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 324
djmeyers 0:06ee5f8a484a 325 m2mbase_stub::operation = M2MBase::NOT_ALLOWED;
djmeyers 0:06ee5f8a484a 326 CHECK(resource->handle_get_request(NULL,coap_header,handler) != NULL);
djmeyers 0:06ee5f8a484a 327
djmeyers 0:06ee5f8a484a 328 CHECK(resource->handle_get_request(NULL,NULL,handler) != NULL);
djmeyers 0:06ee5f8a484a 329
djmeyers 0:06ee5f8a484a 330 if(coap_header->token_ptr) {
djmeyers 0:06ee5f8a484a 331 free(coap_header->token_ptr);
djmeyers 0:06ee5f8a484a 332 coap_header->token_ptr = NULL;
djmeyers 0:06ee5f8a484a 333 }
djmeyers 0:06ee5f8a484a 334 if(coap_header->options_list_ptr) {
djmeyers 0:06ee5f8a484a 335 free(coap_header->options_list_ptr);
djmeyers 0:06ee5f8a484a 336 coap_header->options_list_ptr = NULL;
djmeyers 0:06ee5f8a484a 337 }
djmeyers 0:06ee5f8a484a 338
djmeyers 0:06ee5f8a484a 339 if(common_stub::coap_header){
djmeyers 0:06ee5f8a484a 340 if(common_stub::coap_header->options_list_ptr) {
djmeyers 0:06ee5f8a484a 341 free(common_stub::coap_header->options_list_ptr);
djmeyers 0:06ee5f8a484a 342 common_stub::coap_header->options_list_ptr = NULL;
djmeyers 0:06ee5f8a484a 343 }
djmeyers 0:06ee5f8a484a 344 free(common_stub::coap_header);
djmeyers 0:06ee5f8a484a 345 common_stub::coap_header = NULL;
djmeyers 0:06ee5f8a484a 346 }
djmeyers 0:06ee5f8a484a 347 free(coap_header);
djmeyers 0:06ee5f8a484a 348 coap_header = NULL;
djmeyers 0:06ee5f8a484a 349
djmeyers 0:06ee5f8a484a 350 m2mbase_stub::clear();
djmeyers 0:06ee5f8a484a 351 common_stub::clear();
djmeyers 0:06ee5f8a484a 352 }
djmeyers 0:06ee5f8a484a 353
djmeyers 0:06ee5f8a484a 354 void Test_M2MResource::test_handle_put_request()
djmeyers 0:06ee5f8a484a 355 {
djmeyers 0:06ee5f8a484a 356 uint8_t value[] = {"name"};
djmeyers 0:06ee5f8a484a 357 bool execute_value_updated = false;
djmeyers 0:06ee5f8a484a 358 sn_coap_hdr_s *coap_header = (sn_coap_hdr_s *)malloc(sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 359 TestReportObserver obs;
djmeyers 0:06ee5f8a484a 360 m2mbase_stub::report = new M2MReportHandler(obs);
djmeyers 0:06ee5f8a484a 361
djmeyers 0:06ee5f8a484a 362 memset(coap_header, 0, sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 363
djmeyers 0:06ee5f8a484a 364 coap_header->uri_path_ptr = value;
djmeyers 0:06ee5f8a484a 365 coap_header->uri_path_len = sizeof(value);
djmeyers 0:06ee5f8a484a 366
djmeyers 0:06ee5f8a484a 367 coap_header->msg_code = COAP_MSG_CODE_REQUEST_PUT;
djmeyers 0:06ee5f8a484a 368
djmeyers 0:06ee5f8a484a 369 common_stub::int_value = 0;
djmeyers 0:06ee5f8a484a 370 m2mbase_stub::string_value = "name";
djmeyers 0:06ee5f8a484a 371
djmeyers 0:06ee5f8a484a 372 m2mbase_stub::operation = M2MBase::PUT_ALLOWED;
djmeyers 0:06ee5f8a484a 373 m2mbase_stub::uint8_value = 200;
djmeyers 0:06ee5f8a484a 374
djmeyers 0:06ee5f8a484a 375 common_stub::coap_header = (sn_coap_hdr_ *)malloc(sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 376 memset(common_stub::coap_header,0,sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 377
djmeyers 0:06ee5f8a484a 378 coap_header->payload_ptr = (uint8_t*)malloc(1);
djmeyers 0:06ee5f8a484a 379
djmeyers 0:06ee5f8a484a 380 sn_coap_hdr_s *coap_response = NULL;
djmeyers 0:06ee5f8a484a 381
djmeyers 0:06ee5f8a484a 382 m2mresourceinstance_stub::header = NULL;
djmeyers 0:06ee5f8a484a 383
djmeyers 0:06ee5f8a484a 384 CHECK(resource->handle_put_request(NULL,coap_header,handler,execute_value_updated) == NULL);
djmeyers 0:06ee5f8a484a 385
djmeyers 0:06ee5f8a484a 386 resource->_has_multiple_instances = true;
djmeyers 0:06ee5f8a484a 387 m2mbase_stub::uint8_value = 99;
djmeyers 0:06ee5f8a484a 388 coap_header->content_format = sn_coap_content_format_e(-1);
djmeyers 0:06ee5f8a484a 389 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 390 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 391
djmeyers 0:06ee5f8a484a 392 m2mbase_stub::uint8_value = 0;
djmeyers 0:06ee5f8a484a 393
djmeyers 0:06ee5f8a484a 394 coap_header->options_list_ptr = (sn_coap_options_list_s*)malloc(sizeof(sn_coap_options_list_s));
djmeyers 0:06ee5f8a484a 395 coap_header->options_list_ptr->uri_query_ptr = value;
djmeyers 0:06ee5f8a484a 396 coap_header->options_list_ptr->uri_query_len = sizeof(value);
djmeyers 0:06ee5f8a484a 397
djmeyers 0:06ee5f8a484a 398 coap_header->content_format = sn_coap_content_format_e(99);
djmeyers 0:06ee5f8a484a 399 m2mtlvdeserializer_stub::bool_value = true;
djmeyers 0:06ee5f8a484a 400
djmeyers 0:06ee5f8a484a 401 m2mbase_stub::bool_value = false;
djmeyers 0:06ee5f8a484a 402
djmeyers 0:06ee5f8a484a 403
djmeyers 0:06ee5f8a484a 404 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 405 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 406
djmeyers 0:06ee5f8a484a 407 free(coap_header->options_list_ptr);
djmeyers 0:06ee5f8a484a 408 coap_header->options_list_ptr = NULL;
djmeyers 0:06ee5f8a484a 409
djmeyers 0:06ee5f8a484a 410 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 411 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 412
djmeyers 0:06ee5f8a484a 413 m2mtlvdeserializer_stub::bool_value = false;
djmeyers 0:06ee5f8a484a 414
djmeyers 0:06ee5f8a484a 415 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 416
djmeyers 0:06ee5f8a484a 417 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 418
djmeyers 0:06ee5f8a484a 419 m2mtlvdeserializer_stub::error = M2MTLVDeserializer::NotFound;
djmeyers 0:06ee5f8a484a 420 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 421
djmeyers 0:06ee5f8a484a 422 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 423
djmeyers 0:06ee5f8a484a 424 m2mtlvdeserializer_stub::error = M2MTLVDeserializer::NotValid;
djmeyers 0:06ee5f8a484a 425 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 426
djmeyers 0:06ee5f8a484a 427 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 428
djmeyers 0:06ee5f8a484a 429 m2mtlvdeserializer_stub::error = M2MTLVDeserializer::NotAllowed;
djmeyers 0:06ee5f8a484a 430 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 431
djmeyers 0:06ee5f8a484a 432 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 433
djmeyers 0:06ee5f8a484a 434 coap_header->content_format = sn_coap_content_format_e(100);
djmeyers 0:06ee5f8a484a 435
djmeyers 0:06ee5f8a484a 436 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 437
djmeyers 0:06ee5f8a484a 438 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 439
djmeyers 0:06ee5f8a484a 440 m2mbase_stub::bool_value = true;
djmeyers 0:06ee5f8a484a 441
djmeyers 0:06ee5f8a484a 442 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 443
djmeyers 0:06ee5f8a484a 444 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 445
djmeyers 0:06ee5f8a484a 446 m2mbase_stub::operation = M2MBase::NOT_ALLOWED;
djmeyers 0:06ee5f8a484a 447
djmeyers 0:06ee5f8a484a 448 coap_response = resource->handle_put_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 449
djmeyers 0:06ee5f8a484a 450 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 451
djmeyers 0:06ee5f8a484a 452 coap_response = resource->handle_put_request(NULL,NULL,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 453
djmeyers 0:06ee5f8a484a 454 CHECK( coap_response != NULL);
djmeyers 0:06ee5f8a484a 455
djmeyers 0:06ee5f8a484a 456 //free(coap_header->options_list_ptr);
djmeyers 0:06ee5f8a484a 457 free(coap_header->payload_ptr);
djmeyers 0:06ee5f8a484a 458 free(common_stub::coap_header);
djmeyers 0:06ee5f8a484a 459 free(coap_header);
djmeyers 0:06ee5f8a484a 460 delete m2mbase_stub::report;
djmeyers 0:06ee5f8a484a 461 m2mbase_stub::report = NULL;
djmeyers 0:06ee5f8a484a 462 m2mtlvdeserializer_stub::clear();
djmeyers 0:06ee5f8a484a 463 common_stub::clear();
djmeyers 0:06ee5f8a484a 464 m2mbase_stub::clear();
djmeyers 0:06ee5f8a484a 465 }
djmeyers 0:06ee5f8a484a 466
djmeyers 0:06ee5f8a484a 467 void Test_M2MResource::test_handle_post_request()
djmeyers 0:06ee5f8a484a 468 {
djmeyers 0:06ee5f8a484a 469 uint8_t value[] = {"name"};
djmeyers 0:06ee5f8a484a 470 bool execute_value_updated = false;
djmeyers 0:06ee5f8a484a 471 sn_coap_hdr_s *coap_header = (sn_coap_hdr_s *)malloc(sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 472 memset(coap_header, 0, sizeof(sn_coap_hdr_s));
djmeyers 0:06ee5f8a484a 473
djmeyers 0:06ee5f8a484a 474 coap_header->uri_path_ptr = value;
djmeyers 0:06ee5f8a484a 475 coap_header->uri_path_len = sizeof(value);
djmeyers 0:06ee5f8a484a 476
djmeyers 0:06ee5f8a484a 477 coap_header->msg_code = COAP_MSG_CODE_REQUEST_POST;
djmeyers 0:06ee5f8a484a 478
djmeyers 0:06ee5f8a484a 479 String *name = new String("name");
djmeyers 0:06ee5f8a484a 480 common_stub::int_value = 0;
djmeyers 0:06ee5f8a484a 481 m2mbase_stub::string_value = "name";
djmeyers 0:06ee5f8a484a 482
djmeyers 0:06ee5f8a484a 483 m2mbase_stub::operation = M2MBase::POST_ALLOWED;
djmeyers 0:06ee5f8a484a 484 m2mbase_stub::uint8_value = 200;
djmeyers 0:06ee5f8a484a 485
djmeyers 0:06ee5f8a484a 486 common_stub::coap_header = (sn_coap_hdr_ *)malloc(sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 487 memset(common_stub::coap_header,0,sizeof(sn_coap_hdr_));
djmeyers 0:06ee5f8a484a 488
djmeyers 0:06ee5f8a484a 489 coap_header->payload_ptr = (uint8_t*)malloc(1);
djmeyers 0:06ee5f8a484a 490
djmeyers 0:06ee5f8a484a 491 coap_header->options_list_ptr = (sn_coap_options_list_s*)malloc(sizeof(sn_coap_options_list_s));
djmeyers 0:06ee5f8a484a 492 coap_header->options_list_ptr->uri_query_ptr = value;
djmeyers 0:06ee5f8a484a 493 coap_header->options_list_ptr->uri_query_len = sizeof(value);
djmeyers 0:06ee5f8a484a 494
djmeyers 0:06ee5f8a484a 495 coap_header->content_format = sn_coap_content_format_e(99);
djmeyers 0:06ee5f8a484a 496
djmeyers 0:06ee5f8a484a 497
djmeyers 0:06ee5f8a484a 498 resource->_delayed_response = true;
djmeyers 0:06ee5f8a484a 499 resource->_delayed_token = (uint8_t*)malloc(1);
djmeyers 0:06ee5f8a484a 500 *resource->_delayed_token = 2;
djmeyers 0:06ee5f8a484a 501 coap_header->token_ptr = (uint8_t*)malloc(1);
djmeyers 0:06ee5f8a484a 502 *coap_header->token_ptr = 1;
djmeyers 0:06ee5f8a484a 503 coap_header->token_len = 1;
djmeyers 0:06ee5f8a484a 504
djmeyers 0:06ee5f8a484a 505 m2mbase_stub::bool_value = false;
djmeyers 0:06ee5f8a484a 506 m2mresourceinstance_stub::string_value = name;
djmeyers 0:06ee5f8a484a 507
djmeyers 0:06ee5f8a484a 508 CHECK(resource->handle_post_request(NULL,coap_header,handler,execute_value_updated) != NULL);
djmeyers 0:06ee5f8a484a 509
djmeyers 0:06ee5f8a484a 510 coap_header->content_format = sn_coap_content_format_e(0);
djmeyers 0:06ee5f8a484a 511
djmeyers 0:06ee5f8a484a 512 CHECK(resource->handle_post_request(NULL,coap_header,handler,execute_value_updated) != NULL);
djmeyers 0:06ee5f8a484a 513
djmeyers 0:06ee5f8a484a 514 m2mresourceinstance_stub::int_value = sizeof(value);
djmeyers 0:06ee5f8a484a 515 m2mresourceinstance_stub::value = value;
djmeyers 0:06ee5f8a484a 516
djmeyers 0:06ee5f8a484a 517 resource->_delayed_response = false;
djmeyers 0:06ee5f8a484a 518 sn_coap_hdr_s *coap_response = resource->handle_post_request(NULL,coap_header,handler,execute_value_updated);
djmeyers 0:06ee5f8a484a 519
djmeyers 0:06ee5f8a484a 520 CHECK(coap_response != NULL);
djmeyers 0:06ee5f8a484a 521 free(coap_response->payload_ptr);
djmeyers 0:06ee5f8a484a 522
djmeyers 0:06ee5f8a484a 523 m2mbase_stub::operation = M2MBase::NOT_ALLOWED;
djmeyers 0:06ee5f8a484a 524 CHECK(resource->handle_post_request(NULL,coap_header,handler,execute_value_updated) != NULL);
djmeyers 0:06ee5f8a484a 525
djmeyers 0:06ee5f8a484a 526 CHECK(resource->handle_post_request(NULL,NULL,handler,execute_value_updated) != NULL);
djmeyers 0:06ee5f8a484a 527
djmeyers 0:06ee5f8a484a 528 free(coap_header->token_ptr);
djmeyers 0:06ee5f8a484a 529 free(coap_header->options_list_ptr);
djmeyers 0:06ee5f8a484a 530 free(coap_header->payload_ptr);
djmeyers 0:06ee5f8a484a 531
djmeyers 0:06ee5f8a484a 532 delete name;
djmeyers 0:06ee5f8a484a 533 free(coap_header);
djmeyers 0:06ee5f8a484a 534 free(common_stub::coap_header);
djmeyers 0:06ee5f8a484a 535
djmeyers 0:06ee5f8a484a 536 m2mbase_stub::clear();
djmeyers 0:06ee5f8a484a 537 common_stub::clear();
djmeyers 0:06ee5f8a484a 538 }
djmeyers 0:06ee5f8a484a 539
djmeyers 0:06ee5f8a484a 540 void Test_M2MResource::test_notification_update()
djmeyers 0:06ee5f8a484a 541 {
djmeyers 0:06ee5f8a484a 542 TestReportObserver obs;
djmeyers 0:06ee5f8a484a 543 m2mbase_stub::report = new M2MReportHandler(obs);
djmeyers 0:06ee5f8a484a 544 m2mbase_stub::bool_value = true;
djmeyers 0:06ee5f8a484a 545
djmeyers 0:06ee5f8a484a 546 resource->notification_update();
djmeyers 0:06ee5f8a484a 547
djmeyers 0:06ee5f8a484a 548 delete m2mbase_stub::report;
djmeyers 0:06ee5f8a484a 549 m2mbase_stub::report = NULL;
djmeyers 0:06ee5f8a484a 550 }
djmeyers 0:06ee5f8a484a 551
djmeyers 0:06ee5f8a484a 552 void Test_M2MResource::test_set_delayed_response()
djmeyers 0:06ee5f8a484a 553 {
djmeyers 0:06ee5f8a484a 554 resource->set_delayed_response(true);
djmeyers 0:06ee5f8a484a 555 CHECK(resource->_delayed_response == true);
djmeyers 0:06ee5f8a484a 556 }
djmeyers 0:06ee5f8a484a 557
djmeyers 0:06ee5f8a484a 558 void Test_M2MResource::test_send_delayed_post_response()
djmeyers 0:06ee5f8a484a 559 {
djmeyers 0:06ee5f8a484a 560 resource->_delayed_response = true;
djmeyers 0:06ee5f8a484a 561 m2mbase_stub::observe = handler;
djmeyers 0:06ee5f8a484a 562 CHECK(resource->send_delayed_post_response() == true);
djmeyers 0:06ee5f8a484a 563 }
djmeyers 0:06ee5f8a484a 564
djmeyers 0:06ee5f8a484a 565 void Test_M2MResource::test_get_delayed_token()
djmeyers 0:06ee5f8a484a 566 {
djmeyers 0:06ee5f8a484a 567 uint8_t value[] = {"1"};
djmeyers 0:06ee5f8a484a 568 uint8_t *token = NULL;
djmeyers 0:06ee5f8a484a 569 uint8_t token_len = 0;
djmeyers 0:06ee5f8a484a 570 resource->_delayed_token_len = 1;
djmeyers 0:06ee5f8a484a 571 resource->_delayed_token = (uint8_t*)malloc(sizeof(1));
djmeyers 0:06ee5f8a484a 572 memcpy(resource->_delayed_token,value,1);
djmeyers 0:06ee5f8a484a 573 resource->get_delayed_token(token,token_len);
djmeyers 0:06ee5f8a484a 574 CHECK(token != NULL);
djmeyers 0:06ee5f8a484a 575 free(token);
djmeyers 0:06ee5f8a484a 576
djmeyers 0:06ee5f8a484a 577 token = NULL;
djmeyers 0:06ee5f8a484a 578 token = (uint8_t*)malloc(1);
djmeyers 0:06ee5f8a484a 579 token_len = 1;
djmeyers 0:06ee5f8a484a 580 resource->get_delayed_token(token,token_len);
djmeyers 0:06ee5f8a484a 581 CHECK(token != NULL);
djmeyers 0:06ee5f8a484a 582 free(token);
djmeyers 0:06ee5f8a484a 583
djmeyers 0:06ee5f8a484a 584 }
djmeyers 0:06ee5f8a484a 585
djmeyers 0:06ee5f8a484a 586 void Test_M2MResource::test_delayed_response()
djmeyers 0:06ee5f8a484a 587 {
djmeyers 0:06ee5f8a484a 588 resource->_delayed_response = false;
djmeyers 0:06ee5f8a484a 589 CHECK(resource->delayed_response() == false);
djmeyers 0:06ee5f8a484a 590 }
djmeyers 0:06ee5f8a484a 591
djmeyers 0:06ee5f8a484a 592 void Test_M2MResource::test_execute_params()
djmeyers 0:06ee5f8a484a 593 {
djmeyers 0:06ee5f8a484a 594 M2MResource::M2MExecuteParameter *params = new M2MResource::M2MExecuteParameter();
djmeyers 0:06ee5f8a484a 595 CHECK(params->get_argument_value() == NULL);
djmeyers 0:06ee5f8a484a 596 CHECK(params->get_argument_value_length() == 0);
djmeyers 0:06ee5f8a484a 597 CHECK(params->get_argument_object_name() == "");
djmeyers 0:06ee5f8a484a 598 CHECK(params->get_argument_resource_name() == "");
djmeyers 0:06ee5f8a484a 599 CHECK(params->get_argument_object_instance_id() == 0);
djmeyers 0:06ee5f8a484a 600
djmeyers 0:06ee5f8a484a 601 uint8_t value[] = {"test"};
djmeyers 0:06ee5f8a484a 602 int length = sizeof(value);
djmeyers 0:06ee5f8a484a 603 params->_value = (uint8_t*)malloc(length);
djmeyers 0:06ee5f8a484a 604 memcpy(params->_value,value,length);
djmeyers 0:06ee5f8a484a 605 params->_value_length = length;
djmeyers 0:06ee5f8a484a 606 params->_object_name = "object";
djmeyers 0:06ee5f8a484a 607 params->_resource_name = "resource";
djmeyers 0:06ee5f8a484a 608 params->_object_instance_id = 0;
djmeyers 0:06ee5f8a484a 609 CHECK(params->_value == params->get_argument_value());
djmeyers 0:06ee5f8a484a 610 CHECK(params->_value_length == params->get_argument_value_length());
djmeyers 0:06ee5f8a484a 611 CHECK(params->_resource_name == params->get_argument_resource_name());
djmeyers 0:06ee5f8a484a 612 CHECK(params->_object_name == params->get_argument_object_name());
djmeyers 0:06ee5f8a484a 613 CHECK(params->_object_instance_id == params->get_argument_object_instance_id());
djmeyers 0:06ee5f8a484a 614
djmeyers 0:06ee5f8a484a 615 delete params;
djmeyers 0:06ee5f8a484a 616 }
djmeyers 0:06ee5f8a484a 617
djmeyers 0:06ee5f8a484a 618 void Test_M2MResource::test_ctor()
djmeyers 0:06ee5f8a484a 619 {
djmeyers 0:06ee5f8a484a 620 M2MResource* res = new M2MResource(*m2mobject_stub::inst,&params,M2MResourceInstance::INTEGER,0);
djmeyers 0:06ee5f8a484a 621 delete res;
djmeyers 0:06ee5f8a484a 622 }
djmeyers 0:06ee5f8a484a 623
djmeyers 0:06ee5f8a484a 624 void Test_M2MResource::test_get_parent_object_instance()
djmeyers 0:06ee5f8a484a 625 {
djmeyers 0:06ee5f8a484a 626 M2MResource* res = new M2MResource(*m2mobject_stub::inst,&params,M2MResourceInstance::INTEGER,0);
djmeyers 0:06ee5f8a484a 627
djmeyers 0:06ee5f8a484a 628 // Only for the code coverage
djmeyers 0:06ee5f8a484a 629 res->get_parent_object_instance();
djmeyers 0:06ee5f8a484a 630 delete res;
djmeyers 0:06ee5f8a484a 631
djmeyers 0:06ee5f8a484a 632 }