-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathslugify_test.cpp
More file actions
33 lines (21 loc) · 1.22 KB
/
slugify_test.cpp
File metadata and controls
33 lines (21 loc) · 1.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include "slugify.hpp"
#include "gtest/gtest.h"
namespace real_medium::utils::slug {
TEST(SlugifyTest, TestEmpty) { EXPECT_EQ(Slugify(""), ""); }
TEST(SlugifyTest, TestEnglish1) { EXPECT_EQ(Slugify("abc"), "abc"); }
TEST(SlugifyTest, TestEnglish2) { EXPECT_EQ(Slugify("ab`c"), "abc"); }
TEST(SlugifyTest, TestEnglish3) { EXPECT_EQ(Slugify("ab%c"), "abc"); }
TEST(SlugifyTest, TestEnglish4) { EXPECT_EQ(Slugify("ab c"), "ab-c"); }
TEST(SlugifyTest, TestEnglish5) {
EXPECT_EQ(
Slugify("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz012345"
"6789-._~:/?#[]@!$&'()*+,;="),
"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789"
);
}
TEST(SlugifyTest, TestRussian) { EXPECT_EQ(Slugify("Заголовок статьи"), "zagolovok-stat'i"); }
TEST(SlugifyTest, TestGerman) { EXPECT_EQ(Slugify("Artikelüberschrift"), "artikeluberschrift"); }
TEST(SlugifyTest, TestFrench) { EXPECT_EQ(Slugify("le titre de l'article"), "le-titre-de-larticle"); }
TEST(SlugifyTest, TestSpanish) { EXPECT_EQ(Slugify("título del artículo"), "titulo-del-articulo"); }
TEST(SlugifyTest, TestChineese) { EXPECT_EQ(Slugify("文章標題"), "wen-zhang-biao-ti"); }
} // namespace real_medium::utils::slug