1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00
Files
weechat/tests/unit/core/test-core-command.cpp
T
2025-11-10 15:06:44 +01:00

1292 lines
41 KiB
C++

/*
* SPDX-FileCopyrightText: 2022-2025 Sébastien Helleu <flashcode@flashtux.org>
*
* SPDX-License-Identifier: GPL-3.0-or-later
*
* 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 <https://www.gnu.org/licenses/>.
*/
/* Test command functions */
#include "CppUTest/TestHarness.h"
#include "tests.h"
#include "tests-record.h"
extern "C"
{
#ifndef HAVE_CONFIG_H
#define HAVE_CONFIG_H
#endif
#include <string.h>
#include "src/core/weechat.h"
#include "src/core/core-command.h"
#include "src/core/core-debug.h"
#include "src/core/core-input.h"
#include "src/core/core-string.h"
#include "src/core/core-url.h"
#include "src/gui/gui-buffer.h"
#include "src/gui/gui-chat.h"
#include "src/gui/gui-color.h"
#include "src/gui/gui-cursor.h"
#include "src/gui/gui-filter.h"
#include "src/gui/gui-key.h"
#include "src/gui/gui-mouse.h"
#include "src/plugins/plugin.h"
}
#define WEE_CMD_BUFFER(__buffer_name, __command) \
command_record (__buffer, __command);
#define WEE_CMD_CORE(__command) \
LONGS_EQUAL(WEECHAT_RC_OK, \
command_record ("core.weechat", __command));
#define WEE_CMD_CORE_MIN_ARGS(__command, __error_command) \
LONGS_EQUAL(WEECHAT_RC_ERROR, \
command_record ("core.weechat", __command)); \
command_check_min_args (__command, __error_command);
#define WEE_CMD_CORE_ERROR_GENERIC(__command) \
LONGS_EQUAL(WEECHAT_RC_ERROR, \
command_record ("core.weechat", __command)); \
command_check_error_generic (__command);
#define WEE_CMD_CORE_ERROR_MSG(__command, __error_message) \
LONGS_EQUAL(WEECHAT_RC_ERROR, \
command_record ("core.weechat", __command)); \
WEE_CHECK_MSG_BUFFER( \
"core.weechat", \
GUI_CHAT_PREFIX_ERROR_DEFAULT, \
__error_message);
#define WEE_CHECK_MSG_BUFFER(__buffer_name, __prefix, __message) \
if (!record_search (__buffer_name, __prefix, __message, NULL)) \
{ \
char **msg = command_build_error (__buffer_name, __prefix, \
__message); \
record_dump (msg); \
FAIL(string_dyn_free (msg, 0)); \
}
#define WEE_CHECK_MSG_CORE(__prefix, __message) \
WEE_CHECK_MSG_BUFFER("core.weechat", __prefix, __message);
#define WEE_CHECK_MSG_REGEX_BUFFER(__buffer_name, __regex) \
if (!record_search_msg_regex (__buffer_name, __regex)) \
{ \
char **msg = command_build_error (__buffer_name, NULL, \
__regex); \
record_dump (msg); \
FAIL(string_dyn_free (msg, 0)); \
}
#define WEE_CHECK_MSG_REGEX_CORE(__regex) \
WEE_CHECK_MSG_REGEX_BUFFER("core.weechat", __regex);
TEST_GROUP(CoreCommand)
{
int command_record (const char *buffer_name, const char *command)
{
struct t_gui_buffer *buffer;
int rc;
buffer = gui_buffer_search_by_full_name (buffer_name);
if (!buffer)
{
FAIL("Buffer not found");
}
record_start ();
rc = input_data (buffer, command, NULL, 0, 0);
record_stop ();
return rc;
}
char **command_build_error (const char *buffer_name, const char *prefix,
const char *message)
{
char **msg;
msg = string_dyn_alloc (1024);
string_dyn_concat (msg, "Message not displayed on buffer ", -1);
string_dyn_concat (msg, buffer_name, -1);
string_dyn_concat (msg, ": ", -1);
if (prefix)
{
string_dyn_concat (msg, "prefix=\"", -1);
string_dyn_concat (msg, prefix, -1);
string_dyn_concat (msg, "\", ", -1);
}
string_dyn_concat (msg, "message=\"", -1);
string_dyn_concat (msg, message, -1);
string_dyn_concat (msg, "\"\n", -1);
string_dyn_concat (msg, "All messages displayed:\n", -1);
return msg;
}
void command_check_min_args (const char *command, const char *error_command)
{
char *pos, *command_name, error[1024];
command_name = strdup (command + 1);
pos = strchr (command_name, ' ');
if (pos)
pos[0] = '\0';
snprintf (error, sizeof (error),
"Too few arguments for command \"%s\" (help on command: /help %s)",
error_command,
command_name);
free (command_name);
WEE_CHECK_MSG_CORE(GUI_CHAT_PREFIX_ERROR_DEFAULT, error);
}
void command_check_error_generic (const char *command)
{
char *pos, *command_name, error[1024];
command_name = strdup (command + 1);
pos = strchr (command_name, ' ');
if (pos)
pos[0] = '\0';
snprintf (error, sizeof (error),
"Error with command \"%s\" (help on command: /help %s)",
command,
command_name);
free (command_name);
WEE_CHECK_MSG_CORE(GUI_CHAT_PREFIX_ERROR_DEFAULT, error);
}
};
/*
* Tests functions:
* command_allbuf
*/
TEST(CoreCommand, Allbuf)
{
WEE_CMD_CORE_MIN_ARGS("/allbuf", "/allbuf");
WEE_CMD_CORE("/allbuf /print test allbuf");
WEE_CHECK_MSG_CORE("", "test allbuf");
}
/*
* Tests functions:
* command_away
*/
TEST(CoreCommand, Away)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_bar
*/
TEST(CoreCommand, Bar)
{
WEE_CMD_CORE_ERROR_GENERIC("/bar xxx");
/* /bar, /bar list, /bar listfull, /bar listitems */
WEE_CMD_CORE("/bar");
WEE_CHECK_MSG_CORE("", "List of bars:");
WEE_CMD_CORE("/bar list");
WEE_CHECK_MSG_CORE("", "List of bars:");
WEE_CMD_CORE("/bar listfull");
WEE_CHECK_MSG_CORE("", "List of bars:");
WEE_CMD_CORE("/bar listitems");
WEE_CHECK_MSG_CORE("", "List of bar items:");
/* /bar add, /bar del */
WEE_CMD_CORE_MIN_ARGS("/bar add", "/bar add");
WEE_CMD_CORE_MIN_ARGS("/bar del", "/bar del");
WEE_CMD_CORE_MIN_ARGS("/bar add test", "/bar add");
WEE_CMD_CORE_MIN_ARGS("/bar add test root", "/bar add");
WEE_CMD_CORE_MIN_ARGS("/bar add test root top", "/bar add");
WEE_CMD_CORE_MIN_ARGS("/bar add test root top 1", "/bar add");
WEE_CMD_CORE_MIN_ARGS("/bar add test root top 1 0", "/bar add");
WEE_CMD_CORE_ERROR_MSG("/bar add test type1 top 1 0 item1",
"Invalid type \"type1\" for bar \"test\"");
WEE_CMD_CORE_ERROR_MSG("/bar add test root top_top 1 0 item1",
"Invalid position \"top_top\" for bar \"test\"");
WEE_CMD_CORE_ERROR_MSG("/bar add test root top size1 0 item1",
"Invalid size \"size1\" for bar \"test\"");
WEE_CMD_CORE("/bar add test root top 1 0 item1");
WEE_CHECK_MSG_CORE("", "Bar \"test\" created");
WEE_CMD_CORE_ERROR_MSG("/bar add test root top 1 0 item1",
"Bar \"test\" already exists");
WEE_CMD_CORE("/bar addreplace test root top 1 0 item2");
WEE_CHECK_MSG_CORE("", "Bar \"test\" updated");
WEE_CMD_CORE("/bar addreplace test root,1 top 1 0 item3");
WEE_CHECK_MSG_CORE("", "Bar \"test\" updated");
WEE_CMD_CORE("/bar del test");
WEE_CHECK_MSG_CORE("", "Bar \"test\" deleted");
/* /bar default */
WEE_CMD_CORE("/bar default");
WEE_CMD_CORE("/bar default input title status nicklist");
/* /bar rename */
WEE_CMD_CORE_MIN_ARGS("/bar rename", "/bar rename");
WEE_CMD_CORE_MIN_ARGS("/bar rename status", "/bar rename");
WEE_CMD_CORE_ERROR_MSG("/bar rename xxx test", "Bar \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/bar rename status nicklist",
"Bar \"nicklist\" already exists for \"bar rename\" command");
WEE_CMD_CORE("/bar rename status status2");
WEE_CMD_CORE("/bar rename status2 status");
/* /bar set */
WEE_CMD_CORE_MIN_ARGS("/bar set", "/bar set");
WEE_CMD_CORE_MIN_ARGS("/bar set status", "/bar set");
WEE_CMD_CORE_MIN_ARGS("/bar set status position", "/bar set");
WEE_CMD_CORE_ERROR_MSG("/bar set xxx position top", "Bar \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/bar set status xxx top",
"Unable to set option \"xxx\" for bar \"status\"");
WEE_CMD_CORE("/bar set status position top");
WEE_CMD_CORE("/bar set status position bottom");
/* /bar hide, /bar show, /bar toggle */
WEE_CMD_CORE_MIN_ARGS("/bar hide", "/bar hide");
WEE_CMD_CORE_MIN_ARGS("/bar show", "/bar show");
WEE_CMD_CORE_MIN_ARGS("/bar toggle", "/bar toggle");
WEE_CMD_CORE_ERROR_MSG("/bar hide xxx", "Bar \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/bar show xxx", "Bar \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/bar toggle xxx", "Bar \"xxx\" not found");
WEE_CMD_CORE("/bar toggle status");
WEE_CMD_CORE("/bar toggle status");
WEE_CMD_CORE("/bar hide status");
WEE_CMD_CORE("/bar hide status");
WEE_CMD_CORE("/bar show status");
WEE_CMD_CORE("/bar show status");
/* /bar scroll */
WEE_CMD_CORE_MIN_ARGS("/bar scroll", "/bar scroll");
WEE_CMD_CORE_MIN_ARGS("/bar scroll status", "/bar scroll");
WEE_CMD_CORE_MIN_ARGS("/bar scroll status *", "/bar scroll");
WEE_CMD_CORE_ERROR_MSG("/bar scroll xxx * +10", "Bar \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/bar scroll status 999999 +10", "Window not found for \"bar\" command");
WEE_CMD_CORE_ERROR_MSG("/bar scroll status * +xxx", "Unable to scroll bar \"status\"");
WEE_CMD_CORE("/bar scroll status * +10");
WEE_CMD_CORE("/bar scroll status * -10");
WEE_CMD_CORE("/bar scroll status 1 +10");
WEE_CMD_CORE("/bar scroll status 1 -10");
}
/*
* Tests functions:
* command_buffer
*/
TEST(CoreCommand, Buffer)
{
char string[1024];
WEE_CMD_CORE_ERROR_GENERIC("/buffer xxx");
/* /buffer, /buffer list */
WEE_CMD_CORE("/buffer");
WEE_CHECK_MSG_CORE("", "Buffers list:");
WEE_CMD_CORE("/buffer list");
WEE_CHECK_MSG_CORE("", "Buffers list:");
/* /buffer add, /buffer close */
WEE_CMD_CORE_MIN_ARGS("/buffer add", "/buffer add");
WEE_CMD_CORE_ERROR_MSG("/buffer add weechat",
"Buffer name \"weechat\" is reserved for WeeChat");
WEE_CMD_CORE_ERROR_MSG("/buffer add weechat",
"Buffer name \"weechat\" is reserved for WeeChat");
WEE_CMD_CORE_ERROR_GENERIC("/buffer close 1a-b");
WEE_CMD_CORE_ERROR_GENERIC("/buffer close 2-b");
WEE_CMD_CORE_ERROR_GENERIC("/buffer close 1a-5");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer close core.test");
WEE_CMD_CORE("/buffer add -free -switch test");
WEE_CMD_CORE("/buffer close");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer close 2");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer close 2-50");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer close core.test");
WEE_CMD_CORE("/buffer close xxx");
/* /buffer clear */
WEE_CMD_CORE("/buffer clear");
WEE_CMD_CORE("/buffer clear -all");
WEE_CMD_CORE("/buffer clear -merged");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer clear core.test");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer move */
WEE_CMD_CORE_MIN_ARGS("/buffer move", "/buffer move");
WEE_CMD_CORE_ERROR_MSG("/buffer move xxx", "Invalid buffer number: \"xxx\"");
WEE_CMD_CORE("/buffer move -");
WEE_CMD_CORE("/buffer move +");
WEE_CMD_CORE("/buffer add -switch test");
WEE_CMD_CORE("/buffer move -1");
WEE_CMD_CORE("/buffer move +1");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer swap */
WEE_CMD_CORE_MIN_ARGS("/buffer swap", "/buffer swap");
WEE_CMD_CORE_ERROR_MSG("/buffer swap xxx", "Buffer \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/buffer swap core.weechat xxx", "Buffer \"xxx\" not found");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer swap core.test");
WEE_CMD_CORE("/buffer core.test");
WEE_CMD_CORE("/buffer swap core.test");
WEE_CMD_CORE("/buffer swap core.weechat core.test");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer cycle */
WEE_CMD_CORE_MIN_ARGS("/buffer cycle", "/buffer cycle");
WEE_CMD_CORE("/buffer cycle xxx");
WEE_CMD_CORE("/buffer cycle core.weechat");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer cycle core.test");
WEE_CMD_CORE("/buffer cycle core.weechat core.test");
WEE_CMD_CORE("/buffer cycle core.weechat core.test");
WEE_CMD_CORE("/buffer cycle 1 2");
WEE_CMD_CORE("/buffer cycle 1 2");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer merge, /buffer unmerge */
WEE_CMD_CORE_MIN_ARGS("/buffer merge", "/buffer merge");
WEE_CMD_CORE_ERROR_MSG("/buffer merge xxx", "Buffer \"xxx\" not found");
WEE_CMD_CORE_ERROR_MSG("/buffer unmerge xxx", "Invalid buffer number: \"xxx\"");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer merge 2");
WEE_CMD_CORE("/buffer unmerge");
WEE_CMD_CORE("/buffer core.weechat");
WEE_CMD_CORE("/buffer merge core.test");
WEE_CMD_CORE("/buffer unmerge 1");
WEE_CMD_CORE("/buffer core.weechat");
WEE_CMD_CORE("/buffer merge core.test");
WEE_CMD_CORE("/buffer unmerge -all");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer hide, /buffer unhide */
WEE_CMD_CORE("/buffer hide");
WEE_CMD_CORE("/buffer unhide");
WEE_CMD_CORE("/buffer hide -all");
WEE_CMD_CORE("/buffer unhide -all");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer hide core.weechat 2");
WEE_CMD_CORE("/buffer unhide 1 core.test");
WEE_CMD_CORE("/buffer close core.test");
/* /buffer switch */
WEE_CMD_CORE("/buffer switch -previous");
WEE_CMD_CORE("/buffer switch");
/* /buffer zoom */
WEE_CMD_CORE("/buffer zoom");
/* /buffer renumber */
WEE_CMD_CORE_ERROR_MSG(
"/buffer renumber",
"Renumbering is allowed only if option weechat.look.buffer_auto_renumber is off");
WEE_CMD_CORE("/set weechat.look.buffer_auto_renumber off");
WEE_CMD_CORE_ERROR_MSG("/buffer renumber xxx 2 5", "Invalid buffer number: \"xxx\"");
WEE_CMD_CORE_ERROR_MSG("/buffer renumber 1 xxx 5", "Invalid buffer number: \"xxx\"");
WEE_CMD_CORE_ERROR_MSG("/buffer renumber 1 2 xxx", "Invalid buffer number: \"xxx\"");
snprintf (string, sizeof (string),
"Buffer number \"-1\" is out of range (it must be between 1 and %d)",
GUI_BUFFER_NUMBER_MAX);
WEE_CMD_CORE_ERROR_MSG("/buffer renumber 1 2 -1", string);
WEE_CMD_CORE("/buffer renumber");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer add test2");
WEE_CMD_CORE("/buffer renumber 1 2 5");
WEE_CMD_CORE("/buffer close core.test core.test2");
WEE_CMD_CORE("/reset weechat.look.buffer_auto_renumber");
/* /buffer notify */
WEE_CMD_CORE("/buffer notify");
WEE_CHECK_MSG_CORE("", "Notify for \"core.weechat\": \"all\"");
WEE_CMD_CORE_ERROR_MSG("/buffer notify xxx", "Unable to set notify level \"xxx\"");
/* /buffer listvar */
WEE_CMD_CORE("/buffer listvar");
WEE_CHECK_MSG_CORE("", "Local variables for buffer \"core.weechat\":");
WEE_CMD_CORE("/buffer localvar");
WEE_CHECK_MSG_CORE("", "Local variables for buffer \"core.weechat\":");
WEE_CMD_CORE_ERROR_MSG("/buffer listvar xxx", "Buffer \"xxx\" not found");
/* /buffer setvar, /buffer delvar */
WEE_CMD_CORE_MIN_ARGS("/buffer setvar", "/buffer setvar");
WEE_CMD_CORE_MIN_ARGS("/buffer delvar", "/buffer delvar");
WEE_CMD_CORE("/buffer setvar test");
WEE_CMD_CORE("/buffer listvar core.weechat");
WEE_CHECK_MSG_CORE("", " test: \"\"");
WEE_CMD_CORE("/buffer setvar test value");
WEE_CMD_CORE("/buffer listvar core.weechat");
WEE_CHECK_MSG_CORE("", " test: \"value\"");
WEE_CMD_CORE("/buffer setvar test \"value2\"");
WEE_CMD_CORE("/buffer listvar core.weechat");
WEE_CHECK_MSG_CORE("", " test: \"value2\"");
WEE_CMD_CORE("/buffer delvar test");
/* /buffer set, /buffer setauto, /buffer get */
WEE_CMD_CORE_MIN_ARGS("/buffer set", "/buffer set");
WEE_CMD_CORE_MIN_ARGS("/buffer setauto", "/buffer setauto");
WEE_CMD_CORE_MIN_ARGS("/buffer get", "/buffer get");
WEE_CMD_CORE("/buffer set input");
WEE_CMD_CORE("/buffer setauto input");
WEE_CMD_CORE("/buffer set input test");
WEE_CMD_CORE("/buffer get input");
WEE_CHECK_MSG_CORE("", "core.weechat: (str) input = test");
WEE_CMD_CORE("/buffer set input");
WEE_CMD_CORE("/buffer get localvar_plugin");
WEE_CHECK_MSG_CORE("", "core.weechat: (str) localvar_plugin = core");
WEE_CMD_CORE("/buffer setauto short_name weechat2");
WEE_CMD_CORE("/buffer get short_name");
WEE_CHECK_MSG_CORE("", "core.weechat: (str) short_name = weechat2");
WEE_CMD_CORE("/buffer setauto short_name weechat");
WEE_CMD_CORE("/buffer get plugin");
snprintf (string, sizeof (string), "core.weechat: (ptr) plugin = %p", (void *)NULL);
WEE_CHECK_MSG_CORE("", string);
/* /buffer jump */
WEE_CMD_CORE_MIN_ARGS("/buffer jump", "/buffer jump");
WEE_CMD_CORE_ERROR_GENERIC("/buffer jump xxx");
WEE_CMD_CORE("/buffer jump smart");
WEE_CMD_CORE("/buffer jump last_displayed");
WEE_CMD_CORE("/buffer jump prev_visited");
WEE_CMD_CORE("/buffer jump next_visited");
/* relative jump */
WEE_CMD_CORE("/buffer -");
WEE_CMD_CORE("/buffer +");
WEE_CMD_CORE("/buffer -10");
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer hide test");
WEE_CMD_CORE("/buffer add test2");
WEE_CMD_CORE("/buffer +1");
WEE_CMD_CORE("/buffer -1");
WEE_CMD_CORE("/buffer close core.test core.test2");
/* smart jump */
WEE_CMD_CORE_ERROR_MSG("/buffer *xxx", "Invalid buffer number: \"xxx\"");
WEE_CMD_CORE("/buffer *");
WEE_CMD_CORE("/buffer *2");
/* jump by id, number or name */
WEE_CMD_CORE("/buffer add test");
WEE_CMD_CORE("/buffer 2");
WEE_CMD_CORE("/buffer 1");
WEE_CMD_CORE("/buffer core.test");
WEE_CMD_CORE("/buffer core.weechat");
snprintf (string, sizeof (string), "/buffer %lld", gui_buffers->id);
WEE_CMD_CORE(string);
WEE_CMD_CORE("/buffer close core.test");
}
/*
* Tests functions:
* command_color
*/
TEST(CoreCommand, Color)
{
char string[1024];
WEE_CMD_CORE_ERROR_GENERIC("/color xxx");
/* /color */
WEE_CMD_CORE("/color");
WEE_CMD_CORE("/buffer close core.color");
WEE_CMD_CORE("/buffer add -switch test");
/* /color -o */
WEE_CMD_CORE("/color -o");
/* /color alias, /color unalias */
WEE_CMD_CORE_MIN_ARGS("/color alias", "/color alias");
WEE_CMD_CORE_MIN_ARGS("/color alias 214", "/color alias");
WEE_CMD_CORE_MIN_ARGS("/color unalias", "/color unalias");
WEE_CMD_CORE("/color alias 214 orange");
WEE_CMD_CORE("/color unalias 214");
snprintf (string, sizeof (string),
"Invalid color number \"-2\" (must be between 0 and %d)",
gui_color_get_term_colors ());
WEE_CMD_CORE_ERROR_MSG("/color alias -2 red", string);
WEE_CMD_CORE_ERROR_MSG("/color unalias -2", string);
snprintf (string, sizeof (string),
"Invalid color number \"9999999\" (must be between 0 and %d)",
gui_color_get_term_colors ());
WEE_CMD_CORE_ERROR_MSG("/color alias 9999999 red", string);
WEE_CMD_CORE_ERROR_MSG("/color unalias 9999999", string);
snprintf (string, sizeof (string),
"Invalid color number \"xxx\" (must be between 0 and %d)",
gui_color_get_term_colors ());
WEE_CMD_CORE_ERROR_MSG("/color alias xxx red", string);
WEE_CMD_CORE_ERROR_MSG("/color unalias xxx", string);
WEE_CMD_CORE_ERROR_MSG("/color unalias 214",
"Color \"214\" is not defined in palette");
WEE_CMD_CORE("/color alias 214 orange 255/175/0");
WEE_CMD_CORE("/color unalias 214");
/* /color reset */
WEE_CMD_CORE("/color reset");
/* /color switch */
WEE_CMD_CORE("/color");
WEE_CMD_CORE("/color switch");
WEE_CMD_CORE("/color switch");
WEE_CMD_CORE("/buffer close core.color");
/* /color term2rgb */
WEE_CMD_CORE_MIN_ARGS("/color term2rgb", "/color term2rgb");
WEE_CMD_CORE_ERROR_GENERIC("/color term2rgb xxx");
WEE_CMD_CORE("/color term2rgb 214");
WEE_CHECK_MSG_CORE("", "214 -> #ffaf00");
/* /color rgb2term */
WEE_CMD_CORE_MIN_ARGS("/color rgb2term", "/color rgb2term");
WEE_CMD_CORE_ERROR_GENERIC("/color rgb2term xxx");
WEE_CMD_CORE_ERROR_GENERIC("/color rgb2term fffffff");
WEE_CMD_CORE_ERROR_GENERIC("/color rgb2term ffaf00 1000");
WEE_CMD_CORE("/color rgb2term ffaf00");
WEE_CHECK_MSG_CORE("", "#ffaf00 -> 214");
WEE_CMD_CORE("/color rgb2term #ffaf00");
WEE_CHECK_MSG_CORE("", "#ffaf00 -> 214");
WEE_CMD_CORE("/color rgb2term #ffaf00 100");
WEE_CHECK_MSG_CORE("", "#ffaf00 -> 11");
}
/*
* Tests functions:
* command_command
*/
TEST(CoreCommand, Command)
{
WEE_CMD_CORE_MIN_ARGS("/command", "/command");
WEE_CMD_CORE_MIN_ARGS("/command *", "/command");
/* /command -s */
WEE_CMD_CORE("/command -s /print test1;/print test2");
WEE_CHECK_MSG_CORE("", "test1");
WEE_CHECK_MSG_CORE("", "test2");
/* /command -buffer */
WEE_CMD_CORE_ERROR_MSG("/command -buffer xxx * /print test",
"Buffer \"xxx\" not found");
/* /command <extension> <command> */
WEE_CMD_CORE_ERROR_MSG("/command xxx /print test", "Plugin \"xxx\" not found");
WEE_CMD_CORE("/command * /print test");
WEE_CHECK_MSG_CORE("", "test");
WEE_CMD_CORE("/command * print test");
WEE_CHECK_MSG_CORE("", "test");
}
/*
* Tests functions:
* command_cursor
*/
TEST(CoreCommand, Cursor)
{
WEE_CMD_CORE_ERROR_GENERIC("/cursor xxx");
WEE_CMD_CORE("/window bare");
WEE_CMD_CORE("/cursor");
WEE_CMD_CORE("/window bare");
WEE_CMD_CORE("/cursor");
WEE_CMD_CORE("/cursor");
/* /cursor go, /cursor stop */
WEE_CMD_CORE_MIN_ARGS("/cursor go", "/cursor go");
WEE_CMD_CORE_ERROR_GENERIC("/cursor go x,y");
WEE_CMD_CORE_ERROR_GENERIC("/cursor go xxx");
WEE_CMD_CORE("/cursor go 0,0");
WEE_CMD_CORE("/cursor stop");
WEE_CMD_CORE("/cursor go chat");
WEE_CMD_CORE("/cursor stop");
WEE_CMD_CORE("/cursor go chat bottom_left");
WEE_CMD_CORE("/cursor stop");
/* /cursor move, /cursor stop */
WEE_CMD_CORE_MIN_ARGS("/cursor move", "/cursor move");
WEE_CMD_CORE_ERROR_GENERIC("/cursor move xxx");
WEE_CMD_CORE("/cursor move up");
WEE_CMD_CORE("/cursor move down");
WEE_CMD_CORE("/cursor move left");
WEE_CMD_CORE("/cursor move right");
WEE_CMD_CORE("/cursor move top_left");
WEE_CMD_CORE("/cursor move top_right");
WEE_CMD_CORE("/cursor move bottom_left");
WEE_CMD_CORE("/cursor move bottom_right");
WEE_CMD_CORE("/cursor move edge_top");
WEE_CMD_CORE("/cursor move edge_bottom");
WEE_CMD_CORE("/cursor move edge_left");
WEE_CMD_CORE("/cursor move edge_right");
WEE_CMD_CORE("/cursor move area_up");
WEE_CMD_CORE("/cursor move area_down");
WEE_CMD_CORE("/cursor move area_left");
WEE_CMD_CORE("/cursor move area_right");
WEE_CMD_CORE("/cursor stop");
}
/*
* Tests functions:
* command_debug
*/
TEST(CoreCommand, Debug)
{
const char *command_debug_unicode =
"/debug unicode "
"\u00E9" /* é */
"\u26C4" /* ⛄ (snowman without snow) */
"";
WEE_CMD_CORE_ERROR_GENERIC("/debug xxx");
/* /debug, /debug list */
WEE_CMD_CORE("/debug set core 1");
WEE_CMD_CORE("/debug");
WEE_CHECK_MSG_CORE("", "Debug:");
WEE_CMD_CORE("/debug list");
WEE_CHECK_MSG_CORE("", "Debug:");
WEE_CMD_CORE("/debug set core 0");
/* /debug buffer */
WEE_CMD_CORE("/debug buffer");
WEE_CHECK_MSG_CORE("", "Raw content of buffers has been written in log file");
/* /debug callbacks */
WEE_CMD_CORE_MIN_ARGS("/debug callbacks", "/debug callbacks");
WEE_CMD_CORE_ERROR_GENERIC("/debug callbacks xxx");
CHECK(debug_long_callbacks == 0);
WEE_CMD_CORE("/debug callbacks 957ms");
CHECK(debug_long_callbacks == 957000);
WEE_CHECK_MSG_CORE("", "Debug enabled for callbacks (threshold: 0:00:00.957000)");
WEE_CMD_CORE("/debug callbacks 0");
CHECK(debug_long_callbacks == 0);
WEE_CHECK_MSG_CORE("", "Debug disabled for callbacks");
/* /debug certs */
WEE_CMD_CORE("/debug certs");
WEE_CHECK_MSG_REGEX_CORE("certificate.*loaded.*system.*user");
/* /debug color */
WEE_CMD_CORE("/debug color");
WEE_CHECK_MSG_REGEX_CORE("TERM=.*COLORS:.*COLOR_PAIRS:.*");
WEE_CHECK_MSG_REGEX_CORE("WeeChat colors");
/* /debug cursor */
LONGS_EQUAL(0, gui_cursor_debug);
WEE_CMD_CORE("/debug cursor");
LONGS_EQUAL(1, gui_cursor_debug);
WEE_CHECK_MSG_CORE("", "Debug enabled for cursor mode (normal)");
WEE_CMD_CORE("/debug cursor");
LONGS_EQUAL(0, gui_cursor_debug);
WEE_CHECK_MSG_CORE("", "Debug disabled for cursor mode");
WEE_CMD_CORE("/debug cursor verbose");
LONGS_EQUAL(2, gui_cursor_debug);
WEE_CHECK_MSG_CORE("", "Debug enabled for cursor mode (verbose)");
WEE_CMD_CORE("/debug cursor verbose");
LONGS_EQUAL(0, gui_cursor_debug);
WEE_CHECK_MSG_CORE("", "Debug disabled for cursor mode");
/* /debug dirs */
WEE_CMD_CORE("/debug dirs");
WEE_CHECK_MSG_CORE("", " home:");
WEE_CHECK_MSG_REGEX_CORE(" config: ");
WEE_CHECK_MSG_REGEX_CORE(" data: ");
WEE_CHECK_MSG_REGEX_CORE(" state: ");
WEE_CHECK_MSG_REGEX_CORE(" cache: ");
WEE_CHECK_MSG_REGEX_CORE(" runtime: ");
WEE_CHECK_MSG_REGEX_CORE(" lib: ");
WEE_CHECK_MSG_REGEX_CORE(" lib \\(extra\\): ");
WEE_CHECK_MSG_REGEX_CORE(" share: ");
WEE_CHECK_MSG_REGEX_CORE(" locale: ");
/* /debug dump */
WEE_CMD_CORE("/debug dump");
WEE_CMD_CORE("/debug dump irc");
/* /debug hdata */
WEE_CMD_CORE("/debug hdata");
WEE_CHECK_MSG_REGEX_CORE("[0-9]+ hdata in memory");
WEE_CMD_CORE("/debug hdata free");
/* /debug hooks */
WEE_CMD_CORE("/debug hooks");
WEE_CHECK_MSG_CORE("", "hooks in memory:");
WEE_CMD_CORE("/debug hooks irc");
WEE_CHECK_MSG_REGEX_CORE("hooks \\([0-9]+\\):");
WEE_CMD_CORE("/debug hooks irc timer");
WEE_CHECK_MSG_REGEX_CORE("hooks \\([0-9]+\\):");
/* /debug infolists */
WEE_CMD_CORE("/debug infolists");
WEE_CHECK_MSG_REGEX_CORE("[0-9]+ infolists in memory");
/* /debug key */
LONGS_EQUAL(0, gui_key_debug);
WEE_CMD_CORE("/debug key");
LONGS_EQUAL(1, gui_key_debug);
gui_key_debug = 0;
/* /debug libs */
WEE_CMD_CORE("/debug libs");
WEE_CHECK_MSG_CORE("", "Libs:");
/* /debug memory */
WEE_CMD_CORE("/debug memory");
WEE_CHECK_MSG_REGEX_CORE("Memory usage");
/* /debug mouse */
LONGS_EQUAL(0, gui_mouse_debug);
WEE_CMD_CORE("/debug mouse");
LONGS_EQUAL(1, gui_mouse_debug);
WEE_CHECK_MSG_CORE("", "Debug enabled for mouse (normal)");
WEE_CMD_CORE("/debug mouse");
LONGS_EQUAL(0, gui_mouse_debug);
WEE_CHECK_MSG_CORE("", "Debug disabled for mouse");
WEE_CMD_CORE("/debug mouse verbose");
LONGS_EQUAL(2, gui_mouse_debug);
WEE_CHECK_MSG_CORE("", "Debug enabled for mouse (verbose)");
WEE_CMD_CORE("/debug mouse");
LONGS_EQUAL(0, gui_mouse_debug);
WEE_CHECK_MSG_CORE("", "Debug disabled for mouse");
/* /debug set */
LONGS_EQUAL(0, weechat_debug_core);
WEE_CMD_CORE("/debug set core 1");
WEE_CHECK_MSG_CORE("", "debug: \"core\" => 1");
LONGS_EQUAL(1, weechat_debug_core);
WEE_CMD_CORE("/debug set core 2");
WEE_CHECK_MSG_CORE("", "debug: \"core\" => 2");
LONGS_EQUAL(2, weechat_debug_core);
WEE_CMD_CORE("/debug set core 0");
WEE_CHECK_MSG_CORE("", "Debug disabled for \"core\"");
LONGS_EQUAL(0, weechat_debug_core);
/* /debug tags */
LONGS_EQUAL(0, gui_chat_display_tags);
WEE_CMD_CORE("/debug tags");
LONGS_EQUAL(1, gui_chat_display_tags);
WEE_CMD_CORE("/debug tags");
LONGS_EQUAL(0, gui_chat_display_tags);
/* /debug term */
WEE_CMD_CORE("/debug term");
WEE_CHECK_MSG_REGEX_CORE("TERM=.*size:");
/* /debug time */
WEE_CMD_CORE_MIN_ARGS("/debug time", "/debug time");
WEE_CMD_CORE("/debug time /print test");
WEE_CHECK_MSG_CORE("", "test");
/* /debug unicode */
WEE_CMD_CORE_MIN_ARGS("/debug unicode", "/debug unicode");
WEE_CMD_CORE(command_debug_unicode);
WEE_CHECK_MSG_CORE("", " \"\u00E9\u26C4\": 5 / 2, 2 / 3, 3, 3");
WEE_CHECK_MSG_CORE("", " \"\u00E9\" (U+00E9, 233, 0xC3 0xA9): 2 / 1, 1 / 1, 1, 1, 1");
WEE_CHECK_MSG_CORE("", " \"\u26C4\" (U+26C4, 9924, 0xE2 0x9B 0x84): 3 / 1, 1 / 2, 2, 2, 2");
/* /debug url */
LONGS_EQUAL(0, url_debug);
WEE_CMD_CORE("/debug url");
LONGS_EQUAL(1, url_debug);
WEE_CHECK_MSG_CORE("", "Debug hook_url: enabled");
WEE_CMD_CORE("/debug url");
LONGS_EQUAL(0, url_debug);
WEE_CHECK_MSG_CORE("", "Debug hook_url: disabled");
/* /debug windows */
WEE_CMD_CORE("/debug windows");
WEE_CHECK_MSG_CORE("", "Windows tree:");
/* /debug whitespace */
LONGS_EQUAL(0, gui_chat_whitespace_mode);
WEE_CMD_CORE("/debug whitespace");
LONGS_EQUAL(1, gui_chat_whitespace_mode);
WEE_CMD_CORE("/debug whitespace");
LONGS_EQUAL(0, gui_chat_whitespace_mode);
}
/*
* Tests functions:
* command_eval
*/
TEST(CoreCommand, Eval)
{
WEE_CMD_CORE_MIN_ARGS("/eval", "/eval");
/* /eval */
WEE_CMD_CORE("/eval /print test");
WEE_CHECK_MSG_CORE("", "test");
/* /eval -d */
WEE_CMD_CORE("/eval -d /print test");
WEE_CHECK_MSG_REGEX_CORE("eval_expression\\(\"/print test\"\\)");
WEE_CHECK_MSG_CORE("", "test");
/* /eval -n */
WEE_CMD_CORE("/eval -n ${calc:1+1}");
WEE_CHECK_MSG_CORE("", "== [2]");
/* /eval -c -n */
WEE_CMD_CORE("/eval -c -n abc == abc");
WEE_CHECK_MSG_CORE("", "== [1]");
WEE_CMD_CORE("/eval -c -n abc != abc");
WEE_CHECK_MSG_CORE("", "== [0]");
/* /eval -c -n -d */
WEE_CMD_CORE("/eval -c -n -d abc == abc");
WEE_CHECK_MSG_REGEX_CORE("eval_expression\\(\"abc == abc\"\\)");
WEE_CHECK_MSG_CORE("", "== [1]");
/* /eval -s */
WEE_CMD_CORE("/eval -s /print test1;/print test2");
WEE_CHECK_MSG_CORE("", "test1");
WEE_CHECK_MSG_CORE("", "test2");
/* /eval -s -d */
WEE_CMD_CORE("/eval -s -d /print test1;/print test2");
WEE_CHECK_MSG_REGEX_CORE("eval_expression\\(\"/print test1\"\\)");
WEE_CHECK_MSG_REGEX_CORE("eval_expression\\(\"/print test2\"\\)");
WEE_CHECK_MSG_CORE("", "test1");
WEE_CHECK_MSG_CORE("", "test2");
}
/*
* Tests functions:
* command_filter
*/
TEST(CoreCommand, Filter)
{
WEE_CMD_CORE_ERROR_GENERIC("/filter xxx");
/* /filter, /filter list */
WEE_CMD_CORE("/filter");
WEE_CHECK_MSG_CORE("", "Message filtering enabled");
WEE_CHECK_MSG_CORE("", "No message filter defined");
WEE_CMD_CORE("/filter list");
WEE_CHECK_MSG_CORE("", "Message filtering enabled");
WEE_CHECK_MSG_CORE("", "No message filter defined");
WEE_CMD_CORE("/filter add test core.weechat * regex example");
WEE_CMD_CORE("/filter list");
WEE_CHECK_MSG_CORE("", "Message filtering enabled");
WEE_CHECK_MSG_CORE("", "Message filters:");
WEE_CHECK_MSG_CORE("", " test: buffer: core.weechat / tags: * / regex: regex example");
WEE_CMD_CORE("/filter del test");
/* /filter enable, /filter disable, /filter toggle */
WEE_CMD_CORE("/filter disable");
WEE_CHECK_MSG_CORE("", "Message filtering disabled");
WEE_CMD_CORE("/filter enable");
WEE_CHECK_MSG_CORE("", "Message filtering enabled");
WEE_CMD_CORE("/filter toggle");
WEE_CHECK_MSG_CORE("", "Message filtering disabled");
WEE_CMD_CORE("/filter toggle");
WEE_CHECK_MSG_CORE("", "Message filtering enabled");
WEE_CMD_CORE("/filter add test core.weechat * regex example");
WEE_CMD_CORE("/filter disable test");
WEE_CHECK_MSG_CORE("", "Filter \"test\" disabled");
WEE_CMD_CORE("/filter enable test");
WEE_CHECK_MSG_CORE("", "Filter \"test\" enabled");
WEE_CMD_CORE("/filter toggle test");
WEE_CHECK_MSG_CORE("", "Filter \"test\" disabled");
WEE_CMD_CORE("/filter toggle test");
WEE_CHECK_MSG_CORE("", "Filter \"test\" enabled");
LONGS_EQUAL(1, gui_buffers->filter);
WEE_CMD_CORE("/filter disable @");
LONGS_EQUAL(0, gui_buffers->filter);
WEE_CMD_CORE("/filter enable @");
LONGS_EQUAL(1, gui_buffers->filter);
WEE_CMD_CORE("/filter toggle @");
LONGS_EQUAL(0, gui_buffers->filter);
WEE_CMD_CORE("/filter toggle @");
LONGS_EQUAL(1, gui_buffers->filter);
WEE_CMD_CORE("/filter del test");
/* /filter add, /filter addreplace, /filter recreate */
WEE_CMD_CORE_MIN_ARGS("/filter add", "/filter add");
WEE_CMD_CORE_MIN_ARGS("/filter add test", "/filter add");
WEE_CMD_CORE_MIN_ARGS("/filter add test core.weechat", "/filter add");
WEE_CMD_CORE_MIN_ARGS("/filter add test core.weechat *", "/filter add");
WEE_CMD_CORE_ERROR_MSG("/filter add test core.weechat * *",
"You must specify at least tags or regex for filter");
WEE_CMD_CORE("/filter add test core.weechat * regex example");
WEE_CHECK_MSG_CORE("", "Filter \"test\" added:");
WEE_CHECK_MSG_CORE("", " test: buffer: core.weechat / tags: * / regex: regex example");
WEE_CMD_CORE_MIN_ARGS("/filter addreplace", "/filter addreplace");
WEE_CMD_CORE_MIN_ARGS("/filter addreplace test", "/filter addreplace");
WEE_CMD_CORE_MIN_ARGS("/filter addreplace test core.weechat", "/filter addreplace");
WEE_CMD_CORE_MIN_ARGS("/filter addreplace test core.weechat *", "/filter addreplace");
WEE_CMD_CORE("/filter addreplace test core.weechat * regex example2");
WEE_CHECK_MSG_CORE("", "Filter \"test\" updated:");
WEE_CHECK_MSG_CORE("", " test: buffer: core.weechat / tags: * / regex: regex example2");
WEE_CMD_CORE_ERROR_MSG("/filter recreate xxx", "Filter \"xxx\" not found");
WEE_CMD_CORE("/filter recreate test");
STRCMP_EQUAL(gui_buffers->input_buffer,
"/filter addreplace test core.weechat * regex example2");
WEE_CMD_CORE("/input delete_line");
WEE_CMD_CORE("/filter del test");
/* /filter rename */
WEE_CMD_CORE_MIN_ARGS("/filter rename", "/filter rename");
WEE_CMD_CORE_MIN_ARGS("/filter rename xxx", "/filter rename");
WEE_CMD_CORE_ERROR_MSG("/filter rename xxx yyy", "Filter \"xxx\" not found");
WEE_CMD_CORE("/filter add test1 core.weechat * regex example");
WEE_CMD_CORE("/filter add test2 core.weechat * regex example");
WEE_CMD_CORE_ERROR_MSG("/filter rename test1 test2",
"Unable to rename filter \"test1\" to \"test2\"");
WEE_CMD_CORE("/filter rename test1 test3");
WEE_CHECK_MSG_CORE("", "Filter \"test1\" renamed to \"test3\"");
WEE_CMD_CORE("/filter del test2 test3");
/* /filter del */
WEE_CMD_CORE("/filter add test1 core.weechat * regex example");
WEE_CMD_CORE("/filter add test2 core.weechat * regex example2");
CHECK(gui_filters);
CHECK(gui_filters->next_filter);
WEE_CMD_CORE("/filter del test*");
POINTERS_EQUAL(NULL, gui_filters);
}
/*
* Tests functions:
* command_help
*/
TEST(CoreCommand, Help)
{
WEE_CMD_CORE_ERROR_MSG(
"/help xxx",
"No help available, \"xxx\" is not a command or an option");
/* /help, /help -list, /help -listfull */
WEE_CMD_CORE("/help");
WEE_CHECK_MSG_CORE("", "[core]");
WEE_CMD_CORE("/help -list");
WEE_CHECK_MSG_CORE("", "[core]");
WEE_CMD_CORE("/help -listfull");
WEE_CHECK_MSG_CORE("", "[core]");
WEE_CMD_CORE("/help -listfull core irc fset");
WEE_CHECK_MSG_CORE("", "[core]");
WEE_CHECK_MSG_CORE("", "[irc]");
WEE_CHECK_MSG_CORE("", "[fset]");
/* /help <command> */
WEE_CMD_CORE("/help help");
WEE_CHECK_MSG_CORE("", "display help about commands and options");
/* /help <option> (with defined value) */
/* boolean */
WEE_CMD_CORE("/help weechat.look.confirm_quit");
WEE_CHECK_MSG_CORE("", "Option \"weechat.look.confirm_quit\":");
/* integer */
WEE_CMD_CORE("/help weechat.look.color_pairs_auto_reset");
WEE_CHECK_MSG_CORE("", "Option \"weechat.look.color_pairs_auto_reset\":");
/* string */
WEE_CMD_CORE("/help weechat.look.bar_more_down");
WEE_CHECK_MSG_CORE("", "Option \"weechat.look.bar_more_down\":");
/* color */
WEE_CMD_CORE("/help weechat.color.bar_more");
WEE_CHECK_MSG_CORE("", "Option \"weechat.color.bar_more\":");
/* enum */
WEE_CMD_CORE("/help weechat.look.input_share");
WEE_CHECK_MSG_CORE("", "Option \"weechat.look.input_share\":");
/* /help <option> (with undefined value: test with a new IRC server) */
WEE_CMD_CORE("/server add test 127.0.0.1");
/* boolean */
WEE_CMD_CORE("/help irc.server.test.autojoin_dynamic");
WEE_CHECK_MSG_CORE("", "Option \"irc.server.test.autojoin_dynamic\":");
/* integer */
WEE_CMD_CORE("/help irc.server.test.autojoin_delay");
WEE_CHECK_MSG_CORE("", "Option \"irc.server.test.autojoin_delay\":");
/* string */
WEE_CMD_CORE("/help irc.server.test.autojoin");
WEE_CHECK_MSG_CORE("", "Option \"irc.server.test.autojoin\":");
/* enum */
WEE_CMD_CORE("/help irc.server.test.sasl_fail");
WEE_CHECK_MSG_CORE("", "Option \"irc.server.test.sasl_fail\":");
WEE_CMD_CORE("/server del test");
}
/*
* Tests functions:
* command_history
*/
TEST(CoreCommand, History)
{
WEE_CMD_CORE("/history");
WEE_CMD_CORE("/history clear");
WEE_CMD_CORE_ERROR_GENERIC("/history xxx");
WEE_CMD_CORE_ERROR_GENERIC("/history -1");
}
/*
* Tests functions:
* command_input
*/
TEST(CoreCommand, Input)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_item
*/
TEST(CoreCommand, Item)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_key
*/
TEST(CoreCommand, Key)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_layout
*/
TEST(CoreCommand, Layout)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_mouse
*/
TEST(CoreCommand, Mouse)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_mute
*/
TEST(CoreCommand, Mute)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_pipe
*/
TEST(CoreCommand, Pipe)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_plugin
*/
TEST(CoreCommand, Plugin)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_print
*/
TEST(CoreCommand, Print)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_proxy
*/
TEST(CoreCommand, Proxy)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_quit
*/
TEST(CoreCommand, Quit)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_reload
*/
TEST(CoreCommand, Reload)
{
WEE_CMD_CORE("/save");
WEE_CMD_CORE("/reload");
WEE_CHECK_MSG_CORE("", "Options reloaded from sec.conf");
WEE_CHECK_MSG_CORE("", "Options reloaded from weechat.conf");
WEE_CHECK_MSG_CORE("", "Options reloaded from plugins.conf");
WEE_CHECK_MSG_CORE("", "Options reloaded from charset.conf");
}
/*
* Tests functions:
* command_repeat
*/
TEST(CoreCommand, Repeat)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_reset
*/
TEST(CoreCommand, Reset)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_save
*/
TEST(CoreCommand, Save)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_secure
*/
TEST(CoreCommand, Secure)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_set
*/
TEST(CoreCommand, Set)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_toggle
*/
TEST(CoreCommand, Toggle)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_unset
*/
TEST(CoreCommand, Unset)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_upgrade
*/
TEST(CoreCommand, Upgrade)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_uptime
*/
TEST(CoreCommand, Uptime)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_version
*/
TEST(CoreCommand, Version)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_wait
*/
TEST(CoreCommand, Wait)
{
/* TODO: write tests */
}
/*
* Tests functions:
* command_window
*/
TEST(CoreCommand, Window)
{
/* TODO: write tests */
}