summaryrefslogtreecommitdiff
path: root/tests/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/string.c')
-rw-r--r--tests/string.c90
1 files changed, 64 insertions, 26 deletions
diff --git a/tests/string.c b/tests/string.c
index 7748b6e..923d086 100644
--- a/tests/string.c
+++ b/tests/string.c
@@ -119,7 +119,7 @@ out:
}
static int
-test_string_equal(void) {
+test_string_compare(void) {
int rc = -1;
const struct String *s1 = NULL;
@@ -127,7 +127,7 @@ test_string_equal(void) {
const struct String *s3 = NULL;
const struct String *s4 = NULL;
- test_start("string_equal()");
+ test_start("string_compare()");
if (string_new("aac", &s1)) {
logerr("string_new()");
@@ -166,39 +166,39 @@ test_string_equal(void) {
{
testing("self equality");
- assert(string_equal(s1, s1) == Comparison_EQ);
- assert(string_equal(s2, s2) == Comparison_EQ);
- assert(string_equal(s3, s3) == Comparison_EQ);
- assert(string_equal(s4, s4) == Comparison_EQ);
+ assert(string_compare(s1, s1) == Comparison_EQ);
+ assert(string_compare(s2, s2) == Comparison_EQ);
+ assert(string_compare(s3, s3) == Comparison_EQ);
+ assert(string_compare(s4, s4) == Comparison_EQ);
test_ok();
}
{
testing("lesser/greater values");
- assert(string_equal(s1, s2) == Comparison_LT);
- assert(string_equal(s1, s3) == Comparison_LT);
- assert(string_equal(s1, s4) == Comparison_LT);
+ assert(string_compare(s1, s2) == Comparison_LT);
+ assert(string_compare(s1, s3) == Comparison_LT);
+ assert(string_compare(s1, s4) == Comparison_LT);
- assert(string_equal(s2, s3) == Comparison_LT);
+ assert(string_compare(s2, s3) == Comparison_LT);
- assert(string_equal(s4, s3) == Comparison_LT);
+ assert(string_compare(s4, s3) == Comparison_LT);
- assert(string_equal(s2, s1) == Comparison_GT);
- assert(string_equal(s3, s1) == Comparison_GT);
- assert(string_equal(s4, s1) == Comparison_GT);
+ assert(string_compare(s2, s1) == Comparison_GT);
+ assert(string_compare(s3, s1) == Comparison_GT);
+ assert(string_compare(s4, s1) == Comparison_GT);
- assert(string_equal(s3, s2) == Comparison_GT);
+ assert(string_compare(s3, s2) == Comparison_GT);
- assert(string_equal(s3, s4) == Comparison_GT);
+ assert(string_compare(s3, s4) == Comparison_GT);
test_ok();
}
{
testing("equal values");
- assert(string_equal(s2, s4) == Comparison_EQ);
- assert(string_equal(s4, s2) == Comparison_EQ);
+ assert(string_compare(s2, s4) == Comparison_EQ);
+ assert(string_compare(s4, s2) == Comparison_EQ);
test_ok();
}
@@ -220,6 +220,42 @@ out:
return rc;
}
+static void
+test_string_equals(void) {
+ test_start("string_equals()");
+
+ const struct String *const s1 = &(struct String) {
+ .length = 1U,
+ .bytes = (const uint8_t *)"",
+ };
+
+ const struct String *const s2 = &(struct String) {
+ .length = 1U,
+ .bytes = (const uint8_t *)"",
+ };
+
+ const struct String *const s3 = &(struct String) {
+ .length = 2U,
+ .bytes = (const uint8_t *)" ",
+ };
+
+ {
+ testing("equal values");
+
+ assert(string_equals(s1, s2));
+
+ test_ok();
+ }
+ {
+ testing("different values");
+
+ assert(!string_equals(s1, s3));
+ assert(!string_equals(s2, s3));
+
+ test_ok();
+ }
+}
+
static int
test_string_append(void) {
int rc = -1;
@@ -253,28 +289,28 @@ test_string_append(void) {
logerr("string_append()");
goto out;
}
- assert(string_equal(s, s1) == Comparison_EQ);
+ assert(string_equals(s, s1));
string_free(&s);
if (string_append(s2, s2, &s)) {
logerr("string_append()");
goto out;
}
- assert(string_equal(s, s1) == Comparison_EQ);
+ assert(string_equals(s, s1));
string_free(&s);
if (string_append(s1, s3, &s)) {
logerr("string_append()");
goto out;
}
- assert(string_equal(s, s3) == Comparison_EQ);
+ assert(string_equals(s, s3));
string_free(&s);
if (string_append(s2, s3, &s)) {
logerr("string_append()");
goto out;
}
- assert(string_equal(s, s3) == Comparison_EQ);
+ assert(string_equals(s, s3));
string_free(&s);
test_ok();
@@ -287,10 +323,10 @@ test_string_append(void) {
goto out;
}
- assert(string_equal(s, &(struct String) {
+ assert(string_equals(s, &(struct String) {
.length = 6U,
.bytes = (const uint8_t *)"abcabc",
- }) == Comparison_EQ);
+ }));
string_free(&s);
@@ -339,11 +375,13 @@ main(void) {
goto out;
}
- if (test_string_equal()) {
- logerr("test_string_equal()");
+ if (test_string_compare()) {
+ logerr("test_string_compare()");
goto out;
}
+ test_string_equals();
+
if (test_string_append()) {
logerr("test_string_append()");
goto out;