| 211 | } |
| 212 | |
| 213 | void testCowBytes() { |
| 214 | |
| 215 | RNS::Bytes bytes1("1"); |
| 216 | TEST_ASSERT_EQUAL_size_t(1, bytes1.size()); |
| 217 | TEST_ASSERT_EQUAL_MEMORY("1", bytes1.data(), bytes1.size()); |
| 218 | |
| 219 | RNS::Bytes bytes2(bytes1); |
| 220 | TEST_ASSERT_EQUAL_size_t(1, bytes2.size()); |
| 221 | TEST_ASSERT_EQUAL_MEMORY("1", bytes2.data(), bytes2.size()); |
| 222 | TEST_ASSERT_EQUAL_PTR(bytes1.data(), bytes2.data()); |
| 223 | |
| 224 | RNS::Bytes bytes3(bytes2); |
| 225 | TEST_ASSERT_EQUAL_size_t(1, bytes3.size()); |
| 226 | TEST_ASSERT_EQUAL_MEMORY("1", bytes3.data(), bytes3.size()); |
| 227 | TEST_ASSERT_EQUAL_PTR(bytes2.data(), bytes3.data()); |
| 228 | |
| 229 | TRACEF("pre bytes1 ptr: %p data: %s", (void*)bytes1.data(), bytes1.toString().c_str()); |
| 230 | TRACEF("pre bytes2 ptr: %p data: %s", (void*)bytes2.data(), bytes2.toString().c_str()); |
| 231 | TRACEF("pre bytes3 ptr: %p data: %s", (void*)bytes3.data(), bytes3.toString().c_str()); |
| 232 | |
| 233 | //bytes1.append("mississippi"); |
| 234 | //assert(bytes1.size() == 12); |
| 235 | //assert(memcmp(bytes1.data(), "1mississippi", bytes1.size()) == 0); |
| 236 | //assert(bytes1.data() != bytes2.data()); |
| 237 | |
| 238 | bytes2.append("mississippi"); |
| 239 | TEST_ASSERT_EQUAL_size_t(12, bytes2.size()); |
| 240 | TEST_ASSERT_EQUAL_MEMORY("1mississippi", bytes2.data(), bytes2.size()); |
| 241 | TEST_ASSERT_NOT_EQUAL(bytes1.data(), bytes2.data()); |
| 242 | |
| 243 | bytes3.assign("mississippi"); |
| 244 | TEST_ASSERT_EQUAL_size_t(11, bytes3.size()); |
| 245 | TEST_ASSERT_EQUAL_MEMORY("mississippi", bytes3.data(), bytes3.size()); |
| 246 | TEST_ASSERT_NOT_EQUAL(bytes2.data(), bytes3.data()); |
| 247 | |
| 248 | TRACEF("post bytes1 ptr: %p data: %s", (void*)bytes1.data(), bytes1.toString().c_str()); |
| 249 | TRACEF("post bytes2 ptr: %p data: %s", (void*)bytes2.data(), bytes2.toString().c_str()); |
| 250 | TRACEF("post bytes3 ptr: %p data: %s", (void*)bytes3.data(), bytes3.toString().c_str()); |
| 251 | } |
| 252 | |
| 253 | void testBytesConversion() { |
| 254 | |