summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2024-06-04 10:21:00 -0300
committerEuAndreh <eu@euandre.org>2024-06-04 10:21:00 -0300
commit6e7cd20640c5abcf7d4b54fe4dcc2942faa48ed0 (patch)
tree68a99f4a5ae82c99692be7516117853deff5284f /tests
parentsrc/vector.h: Add vector_capacity() (diff)
downloadpindaiba-6e7cd20640c5abcf7d4b54fe4dcc2942faa48ed0.tar.gz
pindaiba-6e7cd20640c5abcf7d4b54fe4dcc2942faa48ed0.tar.xz
src/string.h: Separate string_equals() from string_compare()
Diffstat (limited to 'tests')
-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;