Unit tests for SmartRest
Dependencies: C027 SmartRest mbed
values/IntegerValueTest.cpp@0:789029e49ea1, 2014-03-24 (annotated)
- Committer:
- vwochnik
- Date:
- Mon Mar 24 10:12:45 2014 +0000
- Revision:
- 0:789029e49ea1
fix
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
vwochnik | 0:789029e49ea1 | 1 | #include "IntegerValueTest.h" |
vwochnik | 0:789029e49ea1 | 2 | #include <stdio.h> |
vwochnik | 0:789029e49ea1 | 3 | #include <assert.h> |
vwochnik | 0:789029e49ea1 | 4 | #include <string.h> |
vwochnik | 0:789029e49ea1 | 5 | |
vwochnik | 0:789029e49ea1 | 6 | IntegerValueTest::IntegerValueTest() |
vwochnik | 0:789029e49ea1 | 7 | { |
vwochnik | 0:789029e49ea1 | 8 | } |
vwochnik | 0:789029e49ea1 | 9 | |
vwochnik | 0:789029e49ea1 | 10 | void IntegerValueTest::test() |
vwochnik | 0:789029e49ea1 | 11 | { |
vwochnik | 0:789029e49ea1 | 12 | testValue(0, "0"); |
vwochnik | 0:789029e49ea1 | 13 | testValue(-1, "-1"); |
vwochnik | 0:789029e49ea1 | 14 | testValue(400, "400"); |
vwochnik | 0:789029e49ea1 | 15 | testValue(-123456, "-123456"); |
vwochnik | 0:789029e49ea1 | 16 | testValue(123456, "123456"); |
vwochnik | 0:789029e49ea1 | 17 | testValue(123123123, "123123123"); |
vwochnik | 0:789029e49ea1 | 18 | } |
vwochnik | 0:789029e49ea1 | 19 | |
vwochnik | 0:789029e49ea1 | 20 | void IntegerValueTest::testValue(long number, const char *expected) |
vwochnik | 0:789029e49ea1 | 21 | { |
vwochnik | 0:789029e49ea1 | 22 | printf("Expecting '%s' for number %d\n", expected, number); |
vwochnik | 0:789029e49ea1 | 23 | IntegerValue value(number); |
vwochnik | 0:789029e49ea1 | 24 | assert(value.length() == strlen(expected)); |
vwochnik | 0:789029e49ea1 | 25 | assert(value.valueType() == VALUE_INTEGER); |
vwochnik | 0:789029e49ea1 | 26 | assert(value.integerValue() == number); |
vwochnik | 0:789029e49ea1 | 27 | value.write(sink); |
vwochnik | 0:789029e49ea1 | 28 | assert(strcmp(expected, sink.value()) == 0); |
vwochnik | 0:789029e49ea1 | 29 | sink.clear(); |
vwochnik | 0:789029e49ea1 | 30 | |
vwochnik | 0:789029e49ea1 | 31 | Value *copy = value.copy(); |
vwochnik | 0:789029e49ea1 | 32 | assert(copy->length() == value.length()); |
vwochnik | 0:789029e49ea1 | 33 | assert(copy->integerValue() == value.integerValue()); |
vwochnik | 0:789029e49ea1 | 34 | assert(copy->valueType() == value.valueType()); |
vwochnik | 0:789029e49ea1 | 35 | delete copy; |
vwochnik | 0:789029e49ea1 | 36 | } |
vwochnik | 0:789029e49ea1 | 37 |