diff options
-rw-r--r-- | ChangeLog.adoc | 2 | ||||
-rw-r--r-- | doc/en/weechat_dev.en.adoc | 1 | ||||
-rw-r--r-- | doc/fr/weechat_dev.fr.adoc | 1 | ||||
-rw-r--r-- | doc/ja/weechat_dev.ja.adoc | 2 | ||||
-rw-r--r-- | tests/CMakeLists.txt | 1 | ||||
-rw-r--r-- | tests/Makefile.am | 1 | ||||
-rw-r--r-- | tests/unit/plugins/irc/test-irc-nick.cpp | 70 |
7 files changed, 77 insertions, 1 deletions
diff --git a/ChangeLog.adoc b/ChangeLog.adoc index 65873cf79..7a1399501 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -45,7 +45,7 @@ Bug fixes:: Tests:: - * unit: add tests on IRC ignore and message functions + * unit: add tests on IRC ignore, message and nick functions Build:: diff --git a/doc/en/weechat_dev.en.adoc b/doc/en/weechat_dev.en.adoc index 55364249a..8aaed473c 100644 --- a/doc/en/weechat_dev.en.adoc +++ b/doc/en/weechat_dev.en.adoc @@ -408,6 +408,7 @@ WeeChat "core" is located in following directories: | test-irc-ignore.cpp | Tests: IRC ignores. | test-irc-message.cpp | Tests: IRC messages. | test-irc-mode.cpp | Tests: IRC modes. +| test-irc-nick.cpp | Tests: IRC nicks. | test-irc-protocol.cpp | Tests: IRC protocol. |=== diff --git a/doc/fr/weechat_dev.fr.adoc b/doc/fr/weechat_dev.fr.adoc index a5649ceca..f643be169 100644 --- a/doc/fr/weechat_dev.fr.adoc +++ b/doc/fr/weechat_dev.fr.adoc @@ -410,6 +410,7 @@ Le cœur de WeeChat est situé dans les répertoires suivants : | test-irc-ignore.cpp | Tests : ignores IRC. | test-irc-message.cpp | Tests : messages IRC. | test-irc-mode.cpp | Tests : modes IRC. +| test-irc-nick.cpp | Tests : pseudos IRC. | test-irc-protocol.cpp | Tests : protocole IRC. |=== diff --git a/doc/ja/weechat_dev.ja.adoc b/doc/ja/weechat_dev.ja.adoc index ee042b6f7..5d1bab6b7 100644 --- a/doc/ja/weechat_dev.ja.adoc +++ b/doc/ja/weechat_dev.ja.adoc @@ -418,6 +418,8 @@ WeeChat "core" は以下のディレクトリに配置されています: | test-irc-message.cpp | Tests: IRC messages. // TRANSLATION MISSING | test-irc-mode.cpp | Tests: IRC modes. +// TRANSLATION MISSING +| test-irc-nick.cpp | Tests: IRC nicks. | test-irc-protocol.cpp | テスト: IRC プロトコル |=== diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 5846e7967..b29f92863 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -49,6 +49,7 @@ set(LIB_WEECHAT_UNIT_TESTS_PLUGINS_SRC unit/plugins/irc/test-irc-ignore.cpp unit/plugins/irc/test-irc-message.cpp unit/plugins/irc/test-irc-mode.cpp + unit/plugins/irc/test-irc-nick.cpp unit/plugins/irc/test-irc-protocol.cpp ) add_library(weechat_unit_tests_plugins MODULE ${LIB_WEECHAT_UNIT_TESTS_PLUGINS_SRC}) diff --git a/tests/Makefile.am b/tests/Makefile.am index 62a9d2721..d55b67a27 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -66,6 +66,7 @@ lib_weechat_unit_tests_plugins_la_SOURCES = unit/plugins/irc/test-irc-color.cpp unit/plugins/irc/test-irc-ignore.cpp \ unit/plugins/irc/test-irc-message.cpp \ unit/plugins/irc/test-irc-mode.cpp \ + unit/plugins/irc/test-irc-nick.cpp \ unit/plugins/irc/test-irc-protocol.cpp lib_weechat_unit_tests_plugins_la_LDFLAGS = -module -no-undefined diff --git a/tests/unit/plugins/irc/test-irc-nick.cpp b/tests/unit/plugins/irc/test-irc-nick.cpp new file mode 100644 index 000000000..c7ed6e138 --- /dev/null +++ b/tests/unit/plugins/irc/test-irc-nick.cpp @@ -0,0 +1,70 @@ +/* + * test-irc-nick.cpp - test IRC nick functions + * + * Copyright (C) 2019 Sébastien Helleu <flashcode@flashtux.org> + * + * This file is part of WeeChat, the extensible chat client. + * + * WeeChat is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * WeeChat is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with WeeChat. If not, see <http://www.gnu.org/licenses/>. + */ + +#include "CppUTest/TestHarness.h" + +extern "C" +{ +#include "src/plugins/irc/irc-nick.h" +} + +TEST_GROUP(IrcNick) +{ +}; + +/* + * Tests functions: + * irc_nick_valid + */ + +TEST(IrcNick, Valid) +{ + /* TODO: write tests */ +} + +/* + * Tests functions: + * irc_nick_is_nick + */ + +TEST(IrcNick, IsNick) +{ + /* empty nick */ + LONGS_EQUAL(0, irc_nick_is_nick (NULL)); + LONGS_EQUAL(0, irc_nick_is_nick ("")); + LONGS_EQUAL(0, irc_nick_is_nick (" ")); + + /* invalid first char */ + LONGS_EQUAL(0, irc_nick_is_nick ("0abc")); + LONGS_EQUAL(0, irc_nick_is_nick ("9abc")); + LONGS_EQUAL(0, irc_nick_is_nick ("-abc")); + + /* invalid chars in nick */ + LONGS_EQUAL(0, irc_nick_is_nick ("noël")); + LONGS_EQUAL(0, irc_nick_is_nick ("testé")); + LONGS_EQUAL(0, irc_nick_is_nick ("nick space")); + + /* valid nicks */ + LONGS_EQUAL(1, irc_nick_is_nick ("tester")); + LONGS_EQUAL(1, irc_nick_is_nick ("bob")); + LONGS_EQUAL(1, irc_nick_is_nick ("alice")); + LONGS_EQUAL(1, irc_nick_is_nick ("very_long_nick_which_is_valid")); +} |