1414
1515using namespace ArduinoJson ::detail;
1616
17- TEST_CASE (" ZeroTerminatedRamString " ) {
18- SECTION (" null" ) {
19- ZeroTerminatedRamString s = adaptString (static_cast <const char *>(0 ));
17+ TEST_CASE (" adaptString() " ) {
18+ SECTION (" null const char* " ) {
19+ auto s = adaptString (static_cast <const char *>(0 ));
2020
2121 CHECK (s.isNull () == true );
2222 CHECK (s.size () == 0 );
23+ CHECK (s.isLinked () == true );
2324 }
2425
25- SECTION (" non-null" ) {
26- ZeroTerminatedRamString s = adaptString (" bravo" );
26+ SECTION (" non-null const char* " ) {
27+ auto s = adaptString (" bravo" );
2728
2829 CHECK (s.isNull () == false );
2930 CHECK (s.size () == 5 );
31+ CHECK (s.isLinked () == true );
3032 }
31- }
3233
33- TEST_CASE (" SizedRamString" ) {
34- SECTION (" null" ) {
35- SizedRamString s = adaptString (static_cast <const char *>(0 ), 10 );
34+ SECTION (" null const char* + size" ) {
35+ auto s = adaptString (static_cast <const char *>(0 ), 10 );
3636
3737 CHECK (s.isNull () == true );
38+ CHECK (s.isLinked () == false );
3839 }
3940
40- SECTION (" non-null" ) {
41- SizedRamString s = adaptString (" bravo" , 5 );
41+ SECTION (" non-null const char* + size " ) {
42+ auto s = adaptString (" bravo" , 5 );
4243
4344 CHECK (s.isNull () == false );
4445 CHECK (s.size () == 5 );
46+ CHECK (s.isLinked () == false );
4547 }
46- }
4748
48- TEST_CASE (" FlashString" ) {
49- SECTION (" null" ) {
50- FlashString s = adaptString (static_cast <const __FlashStringHelper*>(0 ));
49+ SECTION (" null Flash string" ) {
50+ auto s = adaptString (static_cast <const __FlashStringHelper*>(0 ));
5151
5252 CHECK (s.isNull () == true );
5353 CHECK (s.size () == 0 );
54+ CHECK (s.isLinked () == false );
5455 }
5556
56- SECTION (" non-null" ) {
57- FlashString s = adaptString (F (" bravo" ));
57+ SECTION (" non-null Flash string " ) {
58+ auto s = adaptString (F (" bravo" ));
5859
5960 CHECK (s.isNull () == false );
6061 CHECK (s.size () == 5 );
62+ CHECK (s.isLinked () == false );
6163 }
62- }
6364
64- TEST_CASE (" std::string" ) {
65- std::string orig (" bravo" );
66- SizedRamString s = adaptString (orig);
65+ SECTION (" std::string" ) {
66+ std::string orig (" bravo" );
67+ auto s = adaptString (orig);
6768
68- CHECK (s.isNull () == false );
69- CHECK (s.size () == 5 );
70- }
69+ CHECK (s.isNull () == false );
70+ CHECK (s.size () == 5 );
71+ CHECK (s.isLinked () == false );
72+ }
7173
72- TEST_CASE (" Arduino String" ) {
73- ::String orig (" bravo" );
74- SizedRamString s = adaptString (orig);
74+ SECTION (" Arduino String" ) {
75+ ::String orig (" bravo" );
76+ auto s = adaptString (orig);
7577
76- CHECK (s.isNull () == false );
77- CHECK (s.size () == 5 );
78- }
78+ CHECK (s.isNull () == false );
79+ CHECK (s.size () == 5 );
80+ CHECK (s.isLinked () == false );
81+ }
7982
80- TEST_CASE (" custom_string" ) {
81- custom_string orig (" bravo" );
82- SizedRamString s = adaptString (orig);
83+ SECTION (" custom_string" ) {
84+ custom_string orig (" bravo" );
85+ auto s = adaptString (orig);
8386
84- CHECK (s.isNull () == false );
85- CHECK (s.size () == 5 );
87+ CHECK (s.isNull () == false );
88+ CHECK (s.size () == 5 );
89+ CHECK (s.isLinked () == false );
90+ }
8691}
8792
8893struct EmptyStruct {};
@@ -100,21 +105,7 @@ TEST_CASE("IsString<T>") {
100105}
101106
102107TEST_CASE (" stringCompare" ) {
103- SECTION (" ZeroTerminatedRamString vs ZeroTerminatedRamString" ) {
104- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" alpha" )) > 0 );
105- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" bravo" )) == 0 );
106- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" charlie" )) < 0 );
107- }
108-
109- SECTION (" ZeroTerminatedRamString vs SizedRamString" ) {
110- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" alpha?" , 5 )) > 0 );
111- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" bravo?" , 4 )) > 0 );
112- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" bravo?" , 5 )) == 0 );
113- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" bravo?" , 6 )) < 0 );
114- CHECK (stringCompare (adaptString (" bravo" ), adaptString (" charlie?" , 7 )) < 0 );
115- }
116-
117- SECTION (" SizedRamString vs SizedRamString" ) {
108+ SECTION (" RamString vs RamString" ) {
118109 // clang-format off
119110 CHECK (stringCompare (adaptString (" bravo!" , 5 ), adaptString (" alpha?" , 5 )) > 0 );
120111 CHECK (stringCompare (adaptString (" bravo!" , 5 ), adaptString (" bravo?" , 5 )) == 0 );
@@ -134,7 +125,7 @@ TEST_CASE("stringCompare") {
134125 // clang-format on
135126 }
136127
137- SECTION (" FlashString vs SizedRamString " ) {
128+ SECTION (" FlashString vs RamString " ) {
138129 // clang-format off
139130 CHECK (stringCompare (adaptString (F (" bravo" )), adaptString (" alpha?" , 5 )) > 0 );
140131 CHECK (stringCompare (adaptString (F (" bravo" )), adaptString (" bravo?" , 5 )) == 0 );
@@ -145,42 +136,18 @@ TEST_CASE("stringCompare") {
145136 CHECK (stringCompare (adaptString (F (" bravo" )), adaptString (" bravo!" , 6 )) < 0 );
146137 // clang-format on
147138 }
148-
149- SECTION (" ZeroTerminatedRamString vs FlashString" ) {
150- // clang-format off
151- CHECK (stringCompare (adaptString (" bravo" ), adaptString (F (" alpha?" ), 5 )) > 0 );
152- CHECK (stringCompare (adaptString (" bravo" ), adaptString (F (" bravo?" ), 4 )) > 0 );
153- CHECK (stringCompare (adaptString (" bravo" ), adaptString (F (" bravo?" ), 5 )) == 0 );
154- CHECK (stringCompare (adaptString (" bravo" ), adaptString (F (" bravo?" ), 6 )) < 0 );
155- CHECK (stringCompare (adaptString (" bravo" ), adaptString (F (" charlie?" ), 7 )) < 0 );
156- // clang-format on
157- }
158139}
159140
160141TEST_CASE (" stringEquals()" ) {
161- SECTION (" ZeroTerminatedRamString vs ZeroTerminatedRamString" ) {
162- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" brav" )) == false );
163- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" bravo" )) == true );
164- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" bravo!" )) == false );
165- }
166-
167- SECTION (" ZeroTerminatedRamString vs SizedRamString" ) {
168- // clang-format off
169- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" bravo!" , 4 )) == false );
170- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" bravo!" , 5 )) == true );
171- CHECK (stringEquals (adaptString (" bravo" ), adaptString (" bravo!" , 6 )) == false );
172- // clang-format on
173- }
174-
175- SECTION (" FlashString vs SizedRamString" ) {
142+ SECTION (" FlashString vs RamString" ) {
176143 // clang-format off
177144 CHECK (stringEquals (adaptString (F (" bravo" )), adaptString (" bravo!" , 4 )) == false );
178145 CHECK (stringEquals (adaptString (F (" bravo" )), adaptString (" bravo!" , 5 )) == true );
179146 CHECK (stringEquals (adaptString (F (" bravo" )), adaptString (" bravo!" , 6 )) == false );
180147 // clang-format on
181148 }
182149
183- SECTION (" SizedRamString vs SizedRamString " ) {
150+ SECTION (" RamString vs RamString " ) {
184151 // clang-format off
185152 CHECK (stringEquals (adaptString (" bravo?" , 5 ), adaptString (" bravo!" , 4 )) == false );
186153 CHECK (stringEquals (adaptString (" bravo?" , 5 ), adaptString (" bravo!" , 5 )) == true );
0 commit comments