From a105630199bb4be80b3a8228a2c3e5b0c7347625 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sat, 3 Apr 2021 18:51:13 +0200 Subject: Make url parsing better by using a list of valid tlds. Make urls blue in text --- tests/main.cpp | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) (limited to 'tests/main.cpp') diff --git a/tests/main.cpp b/tests/main.cpp index 647fdff..c5138e3 100644 --- a/tests/main.cpp +++ b/tests/main.cpp @@ -6,44 +6,45 @@ int main() { std::vector urls; + const char *str; - urls.clear(); - QuickMedia::extract_urls("example.com", urls); + str = "example.com"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 1); assert_equals(urls[0], "example.com"); - urls.clear(); - QuickMedia::extract_urls("example.com, is where I like to go", urls); + str = "example.com, is where I like to go"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 1); assert_equals(urls[0], "example.com"); - urls.clear(); - QuickMedia::extract_urls("The website I like to go to is example.com", urls); + str = "The website I like to go to is example.com"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 1); assert_equals(urls[0], "example.com"); - urls.clear(); - QuickMedia::extract_urls("example.com. Is also a website", urls); + str = "example.com. Is also a website"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 1); assert_equals(urls[0], "example.com"); - urls.clear(); - QuickMedia::extract_urls("these. are. not. websites.", urls); + str = "these. are. not. websites."; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 0); - urls.clear(); - QuickMedia::extract_urls("This is not an url: example.", urls); + str = "This is not an url: example."; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 0); - urls.clear(); - QuickMedia::extract_urls("the.se/~#423-_/2f.no/3df a.re considered sub.websit.es", urls); + str = "the.se/~#423-_/2f.no/3df a.re considered sub.websit.es, this.is.not"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 3); assert_equals(urls[0], "the.se/~#423-_/2f.no/3df"); assert_equals(urls[1], "a.re"); assert_equals(urls[2], "sub.websit.es"); - urls.clear(); - QuickMedia::extract_urls("(see https://emojipedia.org/emoji/%23%EF%B8%8F%E2%83%A3/)", urls); + str = "(see https://emojipedia.org/emoji/%23%EF%B8%8F%E2%83%A3/)"; + urls = QuickMedia::ranges_get_strings(str, QuickMedia::extract_urls(str)); assert_equals(urls.size(), 1); assert_equals(urls[0], "https://emojipedia.org/emoji/%23%EF%B8%8F%E2%83%A3/"); return 0; -- cgit v1.2.3