utilitiec/tests/StringView.test.c

53 lines
1.4 KiB
C
Raw Permalink Normal View History

2024-06-13 15:28:21 +02:00
#include "../src/StringView/StringView.h"
#include <assert.h>
void test_split(void)
{
const char* source = "this,is,a,csv,header";
StringView sourceSV = StringView_FromString(source);
StringView delim = StringView_FromString(",");
StringView split;
assert(StringView_NextSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("this")));
assert(StringView_NextSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("is")));
assert(StringView_NextSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("a")));
assert(StringView_NextSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("csv")));
assert(StringView_NextSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("header")));
assert(! StringView_NextSplit(&split, &sourceSV, delim));
return;
}
void test_fext(void)
{
const char* filepath = "database.sqlite.old";
StringView sourceSV = StringView_FromString(filepath);
StringView delim = StringView_FromString(".");
StringView split;
assert(StringView_LastSplit(&split, &sourceSV, delim));
assert(StringView_Equal(split, StringView_FromString("old")));
assert(StringView_Equal(sourceSV, StringView_FromString("database.sqlite")));
return;
}
2024-06-13 15:28:21 +02:00
int main()
{
test_split();
test_fext();
2024-06-13 15:28:21 +02:00
return 0;
}