Remove m_object parameter from unit test Macros

This serves no longer any purpose and can be removed.
This commit is contained in:
Markus Sauermann 2023-02-09 00:17:52 +01:00
parent 2572f6800a
commit 1b2ba353dc
3 changed files with 313 additions and 313 deletions

View File

@ -189,7 +189,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
arg2.push_back(1); arg2.push_back(1);
args.push_back(arg2); args.push_back(arg2);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK_FALSE(code_edit->is_line_breakpointed(0)); CHECK_FALSE(code_edit->is_line_breakpointed(0));
CHECK(code_edit->is_line_breakpointed(1)); CHECK(code_edit->is_line_breakpointed(1));
@ -198,7 +198,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
/* Non-Breaking. */ /* Non-Breaking. */
((Array)args[0])[0] = 1; ((Array)args[0])[0] = 1;
((Array)args[1])[0] = 2; ((Array)args[1])[0] = 2;
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK_FALSE(code_edit->is_line_breakpointed(1)); CHECK_FALSE(code_edit->is_line_breakpointed(1));
CHECK(code_edit->is_line_breakpointed(2)); CHECK(code_edit->is_line_breakpointed(2));
@ -207,7 +207,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
/* Above. */ /* Above. */
((Array)args[0])[0] = 2; ((Array)args[0])[0] = 2;
((Array)args[1])[0] = 3; ((Array)args[1])[0] = 3;
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_breakpointed(2)); CHECK_FALSE(code_edit->is_line_breakpointed(2));
CHECK(code_edit->is_line_breakpointed(3)); CHECK(code_edit->is_line_breakpointed(3));
@ -227,7 +227,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
SIGNAL_CHECK("breakpoint_toggled", args); SIGNAL_CHECK("breakpoint_toggled", args);
/* Normal. */ /* Normal. */
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_breakpointed(0)); CHECK(code_edit->is_line_breakpointed(0));
CHECK_FALSE(code_edit->is_line_breakpointed(1)); CHECK_FALSE(code_edit->is_line_breakpointed(1));
@ -235,7 +235,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
/* Non-Breaking. */ /* Non-Breaking. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK(code_edit->is_line_breakpointed(0)); CHECK(code_edit->is_line_breakpointed(0));
CHECK_FALSE(code_edit->is_line_breakpointed(1)); CHECK_FALSE(code_edit->is_line_breakpointed(1));
@ -248,7 +248,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
args.push_back(arg2); args.push_back(arg2);
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_breakpointed(0)); CHECK_FALSE(code_edit->is_line_breakpointed(0));
CHECK(code_edit->is_line_breakpointed(1)); CHECK(code_edit->is_line_breakpointed(1));
@ -269,12 +269,12 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(2); code_edit->set_caret_line(2);
/* backspace onto line does not remove breakpoint */ /* backspace onto line does not remove breakpoint */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK(code_edit->is_line_breakpointed(1)); CHECK(code_edit->is_line_breakpointed(1));
SIGNAL_CHECK_FALSE("breakpoint_toggled"); SIGNAL_CHECK_FALSE("breakpoint_toggled");
/* backspace on breakpointed line removes it */ /* backspace on breakpointed line removes it */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK_FALSE(code_edit->is_line_breakpointed(0)); CHECK_FALSE(code_edit->is_line_breakpointed(0));
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_breakpointed(1)); CHECK_FALSE(code_edit->is_line_breakpointed(1));
@ -294,7 +294,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
Array arg2; Array arg2;
arg2.push_back(1); arg2.push_back(1);
args.push_back(arg2); args.push_back(arg2);
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_breakpointed(2)); CHECK_FALSE(code_edit->is_line_breakpointed(2));
ERR_PRINT_ON; ERR_PRINT_ON;
@ -315,14 +315,14 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(1); code_edit->set_caret_line(1);
/* Delete onto breakpointed lines does not remove it. */ /* Delete onto breakpointed lines does not remove it. */
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_breakpointed(1)); CHECK(code_edit->is_line_breakpointed(1));
SIGNAL_CHECK_FALSE("breakpoint_toggled"); SIGNAL_CHECK_FALSE("breakpoint_toggled");
/* Delete moving breakpointed line up removes it. */ /* Delete moving breakpointed line up removes it. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 1); CHECK(code_edit->get_line_count() == 1);
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_breakpointed(1)); CHECK_FALSE(code_edit->is_line_breakpointed(1));
@ -342,7 +342,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
Array arg2; Array arg2;
arg2.push_back(1); arg2.push_back(1);
args.push_back(arg2); args.push_back(arg2);
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_breakpointed(2)); CHECK_FALSE(code_edit->is_line_breakpointed(2));
ERR_PRINT_ON; ERR_PRINT_ON;
@ -380,7 +380,7 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
Array arg2; Array arg2;
arg2.push_back(4); arg2.push_back(4);
args.push_back(arg2); args.push_back(arg2);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_breakpointed(9)); CHECK_FALSE(code_edit->is_line_breakpointed(9));
ERR_PRINT_ON; ERR_PRINT_ON;
@ -524,19 +524,19 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
CHECK(code_edit->is_line_bookmarked(0)); CHECK(code_edit->is_line_bookmarked(0));
/* Normal. */ /* Normal. */
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK_FALSE(code_edit->is_line_bookmarked(0)); CHECK_FALSE(code_edit->is_line_bookmarked(0));
CHECK(code_edit->is_line_bookmarked(1)); CHECK(code_edit->is_line_bookmarked(1));
/* Non-Breaking. */ /* Non-Breaking. */
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK_FALSE(code_edit->is_line_bookmarked(1)); CHECK_FALSE(code_edit->is_line_bookmarked(1));
CHECK(code_edit->is_line_bookmarked(2)); CHECK(code_edit->is_line_bookmarked(2));
/* Above. */ /* Above. */
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_bookmarked(2)); CHECK_FALSE(code_edit->is_line_bookmarked(2));
CHECK(code_edit->is_line_bookmarked(3)); CHECK(code_edit->is_line_bookmarked(3));
@ -549,21 +549,21 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
CHECK(code_edit->is_line_bookmarked(0)); CHECK(code_edit->is_line_bookmarked(0));
/* Normal. */ /* Normal. */
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_bookmarked(0)); CHECK(code_edit->is_line_bookmarked(0));
CHECK_FALSE(code_edit->is_line_bookmarked(1)); CHECK_FALSE(code_edit->is_line_bookmarked(1));
/* Non-Breaking. */ /* Non-Breaking. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK(code_edit->is_line_bookmarked(0)); CHECK(code_edit->is_line_bookmarked(0));
CHECK_FALSE(code_edit->is_line_bookmarked(1)); CHECK_FALSE(code_edit->is_line_bookmarked(1));
/* Above does move. */ /* Above does move. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_bookmarked(0)); CHECK_FALSE(code_edit->is_line_bookmarked(0));
CHECK(code_edit->is_line_bookmarked(1)); CHECK(code_edit->is_line_bookmarked(1));
@ -577,11 +577,11 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(2); code_edit->set_caret_line(2);
/* backspace onto line does not remove bookmark */ /* backspace onto line does not remove bookmark */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK(code_edit->is_line_bookmarked(1)); CHECK(code_edit->is_line_bookmarked(1));
/* backspace on bookmarked line removes it */ /* backspace on bookmarked line removes it */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK_FALSE(code_edit->is_line_bookmarked(0)); CHECK_FALSE(code_edit->is_line_bookmarked(0));
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_bookmarked(1)); CHECK_FALSE(code_edit->is_line_bookmarked(1));
@ -595,13 +595,13 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(1); code_edit->set_caret_line(1);
/* Delete onto bookmarked lines does not remove it. */ /* Delete onto bookmarked lines does not remove it. */
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_bookmarked(1)); CHECK(code_edit->is_line_bookmarked(1));
/* Delete moving bookmarked line up removes it. */ /* Delete moving bookmarked line up removes it. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 1); CHECK(code_edit->get_line_count() == 1);
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_bookmarked(1)); CHECK_FALSE(code_edit->is_line_bookmarked(1));
@ -730,19 +730,19 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
CHECK(code_edit->is_line_executing(0)); CHECK(code_edit->is_line_executing(0));
/* Normal. */ /* Normal. */
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK_FALSE(code_edit->is_line_executing(0)); CHECK_FALSE(code_edit->is_line_executing(0));
CHECK(code_edit->is_line_executing(1)); CHECK(code_edit->is_line_executing(1));
/* Non-Breaking. */ /* Non-Breaking. */
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK_FALSE(code_edit->is_line_executing(1)); CHECK_FALSE(code_edit->is_line_executing(1));
CHECK(code_edit->is_line_executing(2)); CHECK(code_edit->is_line_executing(2));
/* Above. */ /* Above. */
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_executing(2)); CHECK_FALSE(code_edit->is_line_executing(2));
CHECK(code_edit->is_line_executing(3)); CHECK(code_edit->is_line_executing(3));
@ -755,21 +755,21 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
CHECK(code_edit->is_line_executing(0)); CHECK(code_edit->is_line_executing(0));
/* Normal. */ /* Normal. */
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_executing(0)); CHECK(code_edit->is_line_executing(0));
CHECK_FALSE(code_edit->is_line_executing(1)); CHECK_FALSE(code_edit->is_line_executing(1));
/* Non-Breaking. */ /* Non-Breaking. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line_count() == 3); CHECK(code_edit->get_line_count() == 3);
CHECK(code_edit->is_line_executing(0)); CHECK(code_edit->is_line_executing(0));
CHECK_FALSE(code_edit->is_line_executing(1)); CHECK_FALSE(code_edit->is_line_executing(1));
/* Above does move. */ /* Above does move. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line_count() == 4); CHECK(code_edit->get_line_count() == 4);
CHECK_FALSE(code_edit->is_line_executing(0)); CHECK_FALSE(code_edit->is_line_executing(0));
CHECK(code_edit->is_line_executing(1)); CHECK(code_edit->is_line_executing(1));
@ -783,11 +783,11 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(2); code_edit->set_caret_line(2);
/* backspace onto line does not remove executing lines. */ /* backspace onto line does not remove executing lines. */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK(code_edit->is_line_executing(1)); CHECK(code_edit->is_line_executing(1));
/* backspace on executing line removes it */ /* backspace on executing line removes it */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK_FALSE(code_edit->is_line_executing(0)); CHECK_FALSE(code_edit->is_line_executing(0));
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_executing(1)); CHECK_FALSE(code_edit->is_line_executing(1));
@ -801,13 +801,13 @@ TEST_CASE("[SceneTree][CodeEdit] line gutters") {
code_edit->set_caret_line(1); code_edit->set_caret_line(1);
/* Delete onto executing lines does not remove it. */ /* Delete onto executing lines does not remove it. */
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 2); CHECK(code_edit->get_line_count() == 2);
CHECK(code_edit->is_line_executing(1)); CHECK(code_edit->is_line_executing(1));
/* Delete moving executing line up removes it. */ /* Delete moving executing line up removes it. */
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
SEND_GUI_ACTION(code_edit, "ui_text_delete"); SEND_GUI_ACTION("ui_text_delete");
CHECK(code_edit->get_line_count() == 1); CHECK(code_edit->get_line_count() == 1);
ERR_PRINT_OFF; ERR_PRINT_OFF;
CHECK_FALSE(code_edit->is_line_executing(1)); CHECK_FALSE(code_edit->is_line_executing(1));
@ -1814,7 +1814,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
CHECK(code_edit->get_line(0) == "\t"); CHECK(code_edit->get_line(0) == "\t");
/* Check input action. */ /* Check input action. */
SEND_GUI_ACTION(code_edit, "ui_text_indent"); SEND_GUI_ACTION("ui_text_indent");
CHECK(code_edit->get_line(0) == "\t\t"); CHECK(code_edit->get_line(0) == "\t\t");
/* Insert in place. */ /* Insert in place. */
@ -1887,7 +1887,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
CHECK(code_edit->get_line(0) == " "); CHECK(code_edit->get_line(0) == " ");
/* Check input action. */ /* Check input action. */
SEND_GUI_ACTION(code_edit, "ui_text_indent"); SEND_GUI_ACTION("ui_text_indent");
CHECK(code_edit->get_line(0) == " "); CHECK(code_edit->get_line(0) == " ");
/* Insert in place. */ /* Insert in place. */
@ -1985,7 +1985,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Check input action. */ /* Check input action. */
code_edit->set_text("\t\ttest"); code_edit->set_text("\t\ttest");
SEND_GUI_ACTION(code_edit, "ui_text_dedent"); SEND_GUI_ACTION("ui_text_dedent");
CHECK(code_edit->get_line(0) == "\ttest"); CHECK(code_edit->get_line(0) == "\ttest");
/* Selection does entire line. */ /* Selection does entire line. */
@ -2076,7 +2076,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Check input action. */ /* Check input action. */
code_edit->set_text(" test"); code_edit->set_text(" test");
SEND_GUI_ACTION(code_edit, "ui_text_dedent"); SEND_GUI_ACTION("ui_text_dedent");
CHECK(code_edit->get_line(0) == " test"); CHECK(code_edit->get_line(0) == " test");
/* Selection does entire line. */ /* Selection does entire line. */
@ -2124,28 +2124,28 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Simple indent on new line. */ /* Simple indent on new line. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test:"); CHECK(code_edit->get_line(0) == "test:");
CHECK(code_edit->get_line(1) == "\t"); CHECK(code_edit->get_line(1) == "\t");
/* new blank line should still indent. */ /* new blank line should still indent. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line(0) == "test:"); CHECK(code_edit->get_line(0) == "test:");
CHECK(code_edit->get_line(1) == "\t"); CHECK(code_edit->get_line(1) == "\t");
/* new line above should not indent. */ /* new line above should not indent. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "test:"); CHECK(code_edit->get_line(1) == "test:");
/* Whitespace between symbol and caret is okay. */ /* Whitespace between symbol and caret is okay. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: "); code_edit->insert_text_at_caret("test: ");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: "); CHECK(code_edit->get_line(0) == "test: ");
CHECK(code_edit->get_line(1) == "\t"); CHECK(code_edit->get_line(1) == "\t");
@ -2153,7 +2153,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_comment_delimiter("#", ""); code_edit->add_comment_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: # comment"); code_edit->insert_text_at_caret("test: # comment");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: # comment"); CHECK(code_edit->get_line(0) == "test: # comment");
CHECK(code_edit->get_line(1) == "\t"); CHECK(code_edit->get_line(1) == "\t");
code_edit->remove_comment_delimiter("#"); code_edit->remove_comment_delimiter("#");
@ -2162,7 +2162,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_string_delimiter("#", ""); code_edit->add_string_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: # string"); code_edit->insert_text_at_caret("test: # string");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: # string"); CHECK(code_edit->get_line(0) == "test: # string");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
code_edit->remove_string_delimiter("#"); code_edit->remove_string_delimiter("#");
@ -2171,7 +2171,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_comment_delimiter("#", ""); code_edit->add_comment_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test := 0 # comment"); code_edit->insert_text_at_caret("test := 0 # comment");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test := 0 # comment"); CHECK(code_edit->get_line(0) == "test := 0 # comment");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
code_edit->remove_comment_delimiter("#"); code_edit->remove_comment_delimiter("#");
@ -2179,7 +2179,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Even when there's no comments. */ /* Even when there's no comments. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test := 0"); code_edit->insert_text_at_caret("test := 0");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test := 0"); CHECK(code_edit->get_line(0) == "test := 0");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
@ -2187,7 +2187,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test{"); CHECK(code_edit->get_line(0) == "test{");
CHECK(code_edit->get_line(1) == "\t"); CHECK(code_edit->get_line(1) == "\t");
CHECK(code_edit->get_line(2) == "}"); CHECK(code_edit->get_line(2) == "}");
@ -2196,7 +2196,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "test{}"); CHECK(code_edit->get_line(1) == "test{}");
@ -2204,7 +2204,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line(0) == "test{}"); CHECK(code_edit->get_line(0) == "test{}");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
} }
@ -2217,28 +2217,28 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Simple indent on new line. */ /* Simple indent on new line. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test:"); CHECK(code_edit->get_line(0) == "test:");
CHECK(code_edit->get_line(1) == " "); CHECK(code_edit->get_line(1) == " ");
/* new blank line should still indent. */ /* new blank line should still indent. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line(0) == "test:"); CHECK(code_edit->get_line(0) == "test:");
CHECK(code_edit->get_line(1) == " "); CHECK(code_edit->get_line(1) == " ");
/* new line above should not indent. */ /* new line above should not indent. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test:"); code_edit->insert_text_at_caret("test:");
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "test:"); CHECK(code_edit->get_line(1) == "test:");
/* Whitespace between symbol and caret is okay. */ /* Whitespace between symbol and caret is okay. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: "); code_edit->insert_text_at_caret("test: ");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: "); CHECK(code_edit->get_line(0) == "test: ");
CHECK(code_edit->get_line(1) == " "); CHECK(code_edit->get_line(1) == " ");
@ -2246,7 +2246,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_comment_delimiter("#", ""); code_edit->add_comment_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: # comment"); code_edit->insert_text_at_caret("test: # comment");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: # comment"); CHECK(code_edit->get_line(0) == "test: # comment");
CHECK(code_edit->get_line(1) == " "); CHECK(code_edit->get_line(1) == " ");
code_edit->remove_comment_delimiter("#"); code_edit->remove_comment_delimiter("#");
@ -2255,7 +2255,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_string_delimiter("#", ""); code_edit->add_string_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test: # string"); code_edit->insert_text_at_caret("test: # string");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test: # string"); CHECK(code_edit->get_line(0) == "test: # string");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
code_edit->remove_string_delimiter("#"); code_edit->remove_string_delimiter("#");
@ -2264,7 +2264,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->add_comment_delimiter("#", ""); code_edit->add_comment_delimiter("#", "");
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test := 0 # comment"); code_edit->insert_text_at_caret("test := 0 # comment");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test := 0 # comment"); CHECK(code_edit->get_line(0) == "test := 0 # comment");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
code_edit->remove_comment_delimiter("#"); code_edit->remove_comment_delimiter("#");
@ -2272,7 +2272,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
/* Even when there's no comments. */ /* Even when there's no comments. */
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test := 0"); code_edit->insert_text_at_caret("test := 0");
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test := 0"); CHECK(code_edit->get_line(0) == "test := 0");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
@ -2280,7 +2280,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test{"); CHECK(code_edit->get_line(0) == "test{");
CHECK(code_edit->get_line(1) == " "); CHECK(code_edit->get_line(1) == " ");
CHECK(code_edit->get_line(2) == "}"); CHECK(code_edit->get_line(2) == "}");
@ -2289,7 +2289,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "test{}"); CHECK(code_edit->get_line(1) == "test{}");
@ -2297,7 +2297,7 @@ TEST_CASE("[SceneTree][CodeEdit] indent") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test{}"); code_edit->insert_text_at_caret("test{}");
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line(0) == "test{}"); CHECK(code_edit->get_line(0) == "test{}");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
} }
@ -2764,57 +2764,57 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
/* Check typing inserts closing pair. */ /* Check typing inserts closing pair. */
code_edit->clear(); code_edit->clear();
SEND_GUI_KEY_EVENT(code_edit, Key::BRACKETLEFT); SEND_GUI_KEY_EVENT(Key::BRACKETLEFT);
CHECK(code_edit->get_line(0) == "[]"); CHECK(code_edit->get_line(0) == "[]");
/* Should first match and insert smaller key. */ /* Should first match and insert smaller key. */
code_edit->clear(); code_edit->clear();
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_line(0) == "''"); CHECK(code_edit->get_line(0) == "''");
CHECK(code_edit->get_caret_column() == 1); CHECK(code_edit->get_caret_column() == 1);
/* Move out from center, Should match and insert larger key. */ /* Move out from center, Should match and insert larger key. */
SEND_GUI_ACTION(code_edit, "ui_text_caret_right"); SEND_GUI_ACTION("ui_text_caret_right");
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_line(0) == "''''''"); CHECK(code_edit->get_line(0) == "''''''");
CHECK(code_edit->get_caret_column() == 3); CHECK(code_edit->get_caret_column() == 3);
/* Backspace should remove all. */ /* Backspace should remove all. */
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK(code_edit->get_line(0).is_empty()); CHECK(code_edit->get_line(0).is_empty());
/* If in between and typing close key should "skip". */ /* If in between and typing close key should "skip". */
SEND_GUI_KEY_EVENT(code_edit, Key::BRACKETLEFT); SEND_GUI_KEY_EVENT(Key::BRACKETLEFT);
CHECK(code_edit->get_line(0) == "[]"); CHECK(code_edit->get_line(0) == "[]");
CHECK(code_edit->get_caret_column() == 1); CHECK(code_edit->get_caret_column() == 1);
SEND_GUI_KEY_EVENT(code_edit, Key::BRACKETRIGHT); SEND_GUI_KEY_EVENT(Key::BRACKETRIGHT);
CHECK(code_edit->get_line(0) == "[]"); CHECK(code_edit->get_line(0) == "[]");
CHECK(code_edit->get_caret_column() == 2); CHECK(code_edit->get_caret_column() == 2);
/* If current is char and inserting a string, do not autocomplete. */ /* If current is char and inserting a string, do not autocomplete. */
code_edit->clear(); code_edit->clear();
SEND_GUI_KEY_EVENT(code_edit, Key::A); SEND_GUI_KEY_EVENT(Key::A);
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_line(0) == "A'"); CHECK(code_edit->get_line(0) == "A'");
/* If in comment, do not complete. */ /* If in comment, do not complete. */
code_edit->add_comment_delimiter("#", ""); code_edit->add_comment_delimiter("#", "");
code_edit->clear(); code_edit->clear();
SEND_GUI_KEY_EVENT(code_edit, Key::NUMBERSIGN); SEND_GUI_KEY_EVENT(Key::NUMBERSIGN);
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_line(0) == "#'"); CHECK(code_edit->get_line(0) == "#'");
/* If in string, and inserting string do not complete. */ /* If in string, and inserting string do not complete. */
code_edit->clear(); code_edit->clear();
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
SEND_GUI_KEY_EVENT(code_edit, Key::QUOTEDBL); SEND_GUI_KEY_EVENT(Key::QUOTEDBL);
CHECK(code_edit->get_line(0) == "'\"'"); CHECK(code_edit->get_line(0) == "'\"'");
/* Wrap single line selection with brackets */ /* Wrap single line selection with brackets */
code_edit->clear(); code_edit->clear();
code_edit->insert_text_at_caret("abc"); code_edit->insert_text_at_caret("abc");
code_edit->select_all(); code_edit->select_all();
SEND_GUI_KEY_EVENT(code_edit, Key::BRACKETLEFT); SEND_GUI_KEY_EVENT(Key::BRACKETLEFT);
CHECK(code_edit->get_line(0) == "[abc]"); CHECK(code_edit->get_line(0) == "[abc]");
/* Caret should be after the last character of the single line selection */ /* Caret should be after the last character of the single line selection */
@ -2824,7 +2824,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->clear(); code_edit->clear();
code_edit->insert_text_at_caret("abc\nabc"); code_edit->insert_text_at_caret("abc\nabc");
code_edit->select_all(); code_edit->select_all();
SEND_GUI_KEY_EVENT(code_edit, Key::BRACKETLEFT); SEND_GUI_KEY_EVENT(Key::BRACKETLEFT);
CHECK(code_edit->get_text() == "[abc\nabc]"); CHECK(code_edit->get_text() == "[abc\nabc]");
/* Caret should be after the last character of the multi line selection */ /* Caret should be after the last character of the multi line selection */
@ -2835,14 +2835,14 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->clear(); code_edit->clear();
code_edit->insert_text_at_caret("abc"); code_edit->insert_text_at_caret("abc");
code_edit->select_all(); code_edit->select_all();
SEND_GUI_KEY_EVENT(code_edit, Key::KEY_1); SEND_GUI_KEY_EVENT(Key::KEY_1);
CHECK(code_edit->get_text() == "1"); CHECK(code_edit->get_text() == "1");
/* If potential multichar and single brace completion is matched, it should wrap the single. */ /* If potential multichar and single brace completion is matched, it should wrap the single. */
code_edit->clear(); code_edit->clear();
code_edit->insert_text_at_caret("\'\'abc"); code_edit->insert_text_at_caret("\'\'abc");
code_edit->select(0, 2, 0, 5); code_edit->select(0, 2, 0, 5);
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_text() == "\'\'\'abc\'"); CHECK(code_edit->get_text() == "\'\'\'abc\'");
/* If only the potential multichar brace completion is matched, it does not wrap or complete. */ /* If only the potential multichar brace completion is matched, it does not wrap or complete. */
@ -2853,7 +2853,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->clear(); code_edit->clear();
code_edit->insert_text_at_caret("\'\'abc"); code_edit->insert_text_at_caret("\'\'abc");
code_edit->select(0, 2, 0, 5); code_edit->select(0, 2, 0, 5);
SEND_GUI_KEY_EVENT(code_edit, Key::APOSTROPHE); SEND_GUI_KEY_EVENT(Key::APOSTROPHE);
CHECK(code_edit->get_text() == "\'\'\'"); CHECK(code_edit->get_text() == "\'\'\'");
} }
@ -2977,7 +2977,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
SIGNAL_CHECK("code_completion_requested", signal_args); SIGNAL_CHECK("code_completion_requested", signal_args);
/* Manual request should force. */ /* Manual request should force. */
SEND_GUI_ACTION(code_edit, "ui_text_completion_query"); SEND_GUI_ACTION("ui_text_completion_query");
SIGNAL_CHECK("code_completion_requested", signal_args); SIGNAL_CHECK("code_completion_requested", signal_args);
/* Insert prefix. */ /* Insert prefix. */
@ -3042,7 +3042,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
CHECK(code_edit->get_code_completion_options().size() == 1); CHECK(code_edit->get_code_completion_options().size() == 1);
/* Check cancel closes completion. */ /* Check cancel closes completion. */
SEND_GUI_ACTION(code_edit, "ui_cancel"); SEND_GUI_ACTION("ui_cancel");
CHECK(code_edit->get_code_completion_selected_index() == -1); CHECK(code_edit->get_code_completion_selected_index() == -1);
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
@ -3065,51 +3065,51 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_size(Size2(100, 100)); code_edit->set_size(Size2(100, 100));
/* Check input. */ /* Check input. */
SEND_GUI_ACTION(code_edit, "ui_end"); SEND_GUI_ACTION("ui_end");
CHECK(code_edit->get_code_completion_selected_index() == 2); CHECK(code_edit->get_code_completion_selected_index() == 2);
SEND_GUI_ACTION(code_edit, "ui_home"); SEND_GUI_ACTION("ui_home");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_ACTION(code_edit, "ui_page_down"); SEND_GUI_ACTION("ui_page_down");
CHECK(code_edit->get_code_completion_selected_index() == 2); CHECK(code_edit->get_code_completion_selected_index() == 2);
SEND_GUI_ACTION(code_edit, "ui_page_up"); SEND_GUI_ACTION("ui_page_up");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_ACTION(code_edit, "ui_up"); SEND_GUI_ACTION("ui_up");
CHECK(code_edit->get_code_completion_selected_index() == 2); CHECK(code_edit->get_code_completion_selected_index() == 2);
SEND_GUI_ACTION(code_edit, "ui_down"); SEND_GUI_ACTION("ui_down");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_KEY_EVENT(code_edit, Key::T); SEND_GUI_KEY_EVENT(Key::T);
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_ACTION(code_edit, "ui_left"); SEND_GUI_ACTION("ui_left");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_ACTION(code_edit, "ui_right"); SEND_GUI_ACTION("ui_right");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
SEND_GUI_ACTION(code_edit, "ui_text_backspace"); SEND_GUI_ACTION("ui_text_backspace");
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
Point2 caret_pos = code_edit->get_caret_draw_pos(); Point2 caret_pos = code_edit->get_caret_draw_pos();
caret_pos.y += code_edit->get_line_height(); caret_pos.y += code_edit->get_line_height();
SEND_GUI_MOUSE_BUTTON_EVENT(code_edit, caret_pos, MouseButton::WHEEL_DOWN, 0, Key::NONE); SEND_GUI_MOUSE_BUTTON_EVENT(caret_pos, MouseButton::WHEEL_DOWN, 0, Key::NONE);
CHECK(code_edit->get_code_completion_selected_index() == 1); CHECK(code_edit->get_code_completion_selected_index() == 1);
SEND_GUI_MOUSE_BUTTON_EVENT(code_edit, caret_pos, MouseButton::WHEEL_UP, 0, Key::NONE); SEND_GUI_MOUSE_BUTTON_EVENT(caret_pos, MouseButton::WHEEL_UP, 0, Key::NONE);
CHECK(code_edit->get_code_completion_selected_index() == 0); CHECK(code_edit->get_code_completion_selected_index() == 0);
/* Single click selects. */ /* Single click selects. */
caret_pos.y += code_edit->get_line_height() * 2; caret_pos.y += code_edit->get_line_height() * 2;
SEND_GUI_MOUSE_BUTTON_EVENT(code_edit, caret_pos, MouseButton::LEFT, MouseButtonMask::LEFT, Key::NONE); SEND_GUI_MOUSE_BUTTON_EVENT(caret_pos, MouseButton::LEFT, MouseButtonMask::LEFT, Key::NONE);
CHECK(code_edit->get_code_completion_selected_index() == 2); CHECK(code_edit->get_code_completion_selected_index() == 2);
/* Double click inserts. */ /* Double click inserts. */
SEND_GUI_DOUBLE_CLICK(code_edit, caret_pos, Key::NONE); SEND_GUI_DOUBLE_CLICK(caret_pos, Key::NONE);
CHECK(code_edit->get_code_completion_selected_index() == -1); CHECK(code_edit->get_code_completion_selected_index() == -1);
CHECK(code_edit->get_line(0) == "item_2"); CHECK(code_edit->get_line(0) == "item_2");
@ -3130,7 +3130,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0 test"); CHECK(code_edit->get_line(0) == "item_0 test");
/* Replace string. */ /* Replace string. */
@ -3139,7 +3139,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "\"item_0\""); CHECK(code_edit->get_line(0) == "\"item_0\"");
/* Normal replace if no end is given. */ /* Normal replace if no end is given. */
@ -3148,7 +3148,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "\"item_0\" test"); CHECK(code_edit->get_line(0) == "\"item_0\" test");
/* Insert at completion. */ /* Insert at completion. */
@ -3157,7 +3157,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_accept"); SEND_GUI_ACTION("ui_text_completion_accept");
CHECK(code_edit->get_line(0) == "item_01 test"); CHECK(code_edit->get_line(0) == "item_01 test");
/* Insert at completion with string should have same output. */ /* Insert at completion with string should have same output. */
@ -3166,7 +3166,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0.", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_accept"); SEND_GUI_ACTION("ui_text_completion_accept");
CHECK(code_edit->get_line(0) == "\"item_0\"1 test\""); CHECK(code_edit->get_line(0) == "\"item_0\"1 test\"");
/* Merge symbol at end on insert text. */ /* Merge symbol at end on insert text. */
@ -3176,7 +3176,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0("); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0(");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0( test"); CHECK(code_edit->get_line(0) == "item_0( test");
CHECK(code_edit->get_caret_column() == 7); CHECK(code_edit->get_caret_column() == 7);
@ -3186,7 +3186,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0( test"); CHECK(code_edit->get_line(0) == "item_0( test");
CHECK(code_edit->get_caret_column() == 6); CHECK(code_edit->get_caret_column() == 6);
@ -3196,7 +3196,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0("); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0(");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0( test"); CHECK(code_edit->get_line(0) == "item_0( test");
CHECK(code_edit->get_caret_column() == 7); CHECK(code_edit->get_caret_column() == 7);
@ -3207,7 +3207,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 8); CHECK(code_edit->get_caret_column() == 8);
@ -3217,7 +3217,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 6); CHECK(code_edit->get_caret_column() == 6);
@ -3227,7 +3227,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 8); CHECK(code_edit->get_caret_column() == 8);
@ -3240,7 +3240,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0("); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0(");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 7); CHECK(code_edit->get_caret_column() == 7);
@ -3250,7 +3250,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0( test"); CHECK(code_edit->get_line(0) == "item_0( test");
CHECK(code_edit->get_caret_column() == 6); CHECK(code_edit->get_caret_column() == 6);
@ -3260,7 +3260,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0("); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0(", "item_0(");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0( test"); CHECK(code_edit->get_line(0) == "item_0( test");
CHECK(code_edit->get_caret_column() == 7); CHECK(code_edit->get_caret_column() == 7);
@ -3271,7 +3271,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 8); CHECK(code_edit->get_caret_column() == 8);
@ -3281,7 +3281,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0", "item_0");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 6); CHECK(code_edit->get_caret_column() == 6);
@ -3291,7 +3291,7 @@ TEST_CASE("[SceneTree][CodeEdit] completion") {
code_edit->set_caret_column(2); code_edit->set_caret_column(2);
code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()"); code_edit->add_code_completion_option(CodeEdit::CodeCompletionKind::KIND_CLASS, "item_0()", "item_0()");
code_edit->update_code_completion_options(); code_edit->update_code_completion_options();
SEND_GUI_ACTION(code_edit, "ui_text_completion_replace"); SEND_GUI_ACTION("ui_text_completion_replace");
CHECK(code_edit->get_line(0) == "item_0() test"); CHECK(code_edit->get_line(0) == "item_0() test");
CHECK(code_edit->get_caret_column() == 8); CHECK(code_edit->get_caret_column() == 8);
} }
@ -3316,15 +3316,15 @@ TEST_CASE("[SceneTree][CodeEdit] symbol lookup") {
Point2 caret_pos = code_edit->get_caret_draw_pos(); Point2 caret_pos = code_edit->get_caret_draw_pos();
caret_pos.x += 60; caret_pos.x += 60;
SEND_GUI_MOUSE_BUTTON_EVENT(code_edit, caret_pos, MouseButton::NONE, 0, Key::NONE); SEND_GUI_MOUSE_BUTTON_EVENT(caret_pos, MouseButton::NONE, 0, Key::NONE);
CHECK(code_edit->get_text_for_symbol_lookup() == "this is s" + String::chr(0xFFFF) + "ome text"); CHECK(code_edit->get_text_for_symbol_lookup() == "this is s" + String::chr(0xFFFF) + "ome text");
SIGNAL_WATCH(code_edit, "symbol_validate"); SIGNAL_WATCH(code_edit, "symbol_validate");
#ifdef MACOS_ENABLED #ifdef MACOS_ENABLED
SEND_GUI_KEY_EVENT(code_edit, Key::META); SEND_GUI_KEY_EVENT(Key::META);
#else #else
SEND_GUI_KEY_EVENT(code_edit, Key::CTRL); SEND_GUI_KEY_EVENT(Key::CTRL);
#endif #endif
Array signal_args; Array signal_args;
@ -3418,7 +3418,7 @@ TEST_CASE("[SceneTree][CodeEdit] New Line") {
code_edit->insert_text_at_caret("test new line"); code_edit->insert_text_at_caret("test new line");
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
code_edit->set_caret_column(13); code_edit->set_caret_column(13);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test new line"); CHECK(code_edit->get_line(0) == "test new line");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
@ -3427,7 +3427,7 @@ TEST_CASE("[SceneTree][CodeEdit] New Line") {
code_edit->insert_text_at_caret("test new line"); code_edit->insert_text_at_caret("test new line");
code_edit->set_caret_line(0); code_edit->set_caret_line(0);
code_edit->set_caret_column(5); code_edit->set_caret_column(5);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == "test "); CHECK(code_edit->get_line(0) == "test ");
CHECK(code_edit->get_line(1) == "new line"); CHECK(code_edit->get_line(1) == "new line");
@ -3435,7 +3435,7 @@ TEST_CASE("[SceneTree][CodeEdit] New Line") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test new line"); code_edit->insert_text_at_caret("test new line");
code_edit->select(0, 0, 0, 5); code_edit->select(0, 0, 0, 5);
SEND_GUI_ACTION(code_edit, "ui_text_newline"); SEND_GUI_ACTION("ui_text_newline");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "new line"); CHECK(code_edit->get_line(1) == "new line");
@ -3443,7 +3443,7 @@ TEST_CASE("[SceneTree][CodeEdit] New Line") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test new line"); code_edit->insert_text_at_caret("test new line");
code_edit->select(0, 0, 0, 5); code_edit->select(0, 0, 0, 5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_blank"); SEND_GUI_ACTION("ui_text_newline_blank");
CHECK(code_edit->get_line(0) == "test new line"); CHECK(code_edit->get_line(0) == "test new line");
CHECK(code_edit->get_line(1) == ""); CHECK(code_edit->get_line(1) == "");
@ -3451,7 +3451,7 @@ TEST_CASE("[SceneTree][CodeEdit] New Line") {
code_edit->set_text(""); code_edit->set_text("");
code_edit->insert_text_at_caret("test new line"); code_edit->insert_text_at_caret("test new line");
code_edit->select(0, 0, 0, 5); code_edit->select(0, 0, 0, 5);
SEND_GUI_ACTION(code_edit, "ui_text_newline_above"); SEND_GUI_ACTION("ui_text_newline_above");
CHECK(code_edit->get_line(0) == ""); CHECK(code_edit->get_line(0) == "");
CHECK(code_edit->get_line(1) == "test new line"); CHECK(code_edit->get_line(1) == "test new line");

File diff suppressed because it is too large Load Diff

View File

@ -134,16 +134,16 @@ int register_test_command(String p_command, TestFunc p_function);
// Utility macros to send an event actions to a given object // Utility macros to send an event actions to a given object
// Requires Message Queue and InputMap to be setup. // Requires Message Queue and InputMap to be setup.
// SEND_GUI_ACTION - takes an object and a input map key. e.g SEND_GUI_ACTION(code_edit, "ui_text_newline"). // SEND_GUI_ACTION - takes an input map key. e.g SEND_GUI_ACTION("ui_text_newline").
// SEND_GUI_KEY_EVENT - takes an object and a keycode set. e.g SEND_GUI_KEY_EVENT(code_edit, Key::A | KeyModifierMask::META). // SEND_GUI_KEY_EVENT - takes a keycode set. e.g SEND_GUI_KEY_EVENT(Key::A | KeyModifierMask::META).
// SEND_GUI_MOUSE_BUTTON_EVENT - takes an object, position, mouse button, mouse mask and modifiers e.g SEND_GUI_MOUSE_BUTTON_EVENT(code_edit, Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE, Key::None); // SEND_GUI_MOUSE_BUTTON_EVENT - takes a position, mouse button, mouse mask and modifiers e.g SEND_GUI_MOUSE_BUTTON_EVENT(Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE, Key::None);
// SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT - takes an object, position, mouse button, mouse mask and modifiers e.g SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT(code_edit, Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE, Key::None); // SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT - takes a position, mouse button, mouse mask and modifiers e.g SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT(Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE, Key::None);
// SEND_GUI_MOUSE_MOTION_EVENT - takes an object, position, mouse mask and modifiers e.g SEND_GUI_MOUSE_MOTION_EVENT(code_edit, Vector2(50, 50), MouseButtonMask::LEFT, KeyModifierMask::META); // SEND_GUI_MOUSE_MOTION_EVENT - takes a position, mouse mask and modifiers e.g SEND_GUI_MOUSE_MOTION_EVENT(Vector2(50, 50), MouseButtonMask::LEFT, KeyModifierMask::META);
// SEND_GUI_DOUBLE_CLICK - takes an object, position and modifiers. e.g SEND_GUI_DOUBLE_CLICK(code_edit, Vector2(50, 50), KeyModifierMask::META); // SEND_GUI_DOUBLE_CLICK - takes a position and modifiers. e.g SEND_GUI_DOUBLE_CLICK(Vector2(50, 50), KeyModifierMask::META);
#define _SEND_DISPLAYSERVER_EVENT(m_event) ((DisplayServerMock *)(DisplayServer::get_singleton()))->simulate_event(m_event); #define _SEND_DISPLAYSERVER_EVENT(m_event) ((DisplayServerMock *)(DisplayServer::get_singleton()))->simulate_event(m_event);
#define SEND_GUI_ACTION(m_object, m_action) \ #define SEND_GUI_ACTION(m_action) \
{ \ { \
const List<Ref<InputEvent>> *events = InputMap::get_singleton()->action_get_events(m_action); \ const List<Ref<InputEvent>> *events = InputMap::get_singleton()->action_get_events(m_action); \
const List<Ref<InputEvent>>::Element *first_event = events->front(); \ const List<Ref<InputEvent>>::Element *first_event = events->front(); \
@ -153,7 +153,7 @@ int register_test_command(String p_command, TestFunc p_function);
MessageQueue::get_singleton()->flush(); \ MessageQueue::get_singleton()->flush(); \
} }
#define SEND_GUI_KEY_EVENT(m_object, m_input) \ #define SEND_GUI_KEY_EVENT(m_input) \
{ \ { \
Ref<InputEventKey> event = InputEventKey::create_reference(m_input); \ Ref<InputEventKey> event = InputEventKey::create_reference(m_input); \
event->set_pressed(true); \ event->set_pressed(true); \
@ -167,53 +167,53 @@ int register_test_command(String p_command, TestFunc p_function);
m_event->set_ctrl_pressed(((m_modifers)&KeyModifierMask::CTRL) != Key::NONE); \ m_event->set_ctrl_pressed(((m_modifers)&KeyModifierMask::CTRL) != Key::NONE); \
m_event->set_meta_pressed(((m_modifers)&KeyModifierMask::META) != Key::NONE); m_event->set_meta_pressed(((m_modifers)&KeyModifierMask::META) != Key::NONE);
#define _CREATE_GUI_MOUSE_EVENT(m_object, m_local_pos, m_input, m_mask, m_modifers) \ #define _CREATE_GUI_MOUSE_EVENT(m_screen_pos, m_input, m_mask, m_modifers) \
Ref<InputEventMouseButton> event; \ Ref<InputEventMouseButton> event; \
event.instantiate(); \ event.instantiate(); \
event->set_position(m_local_pos); \ event->set_position(m_screen_pos); \
event->set_button_index(m_input); \ event->set_button_index(m_input); \
event->set_button_mask(m_mask); \ event->set_button_mask(m_mask); \
event->set_factor(1); \ event->set_factor(1); \
_UPDATE_EVENT_MODIFERS(event, m_modifers); \ _UPDATE_EVENT_MODIFERS(event, m_modifers); \
event->set_pressed(true); event->set_pressed(true);
#define SEND_GUI_MOUSE_BUTTON_EVENT(m_object, m_local_pos, m_input, m_mask, m_modifers) \ #define SEND_GUI_MOUSE_BUTTON_EVENT(m_screen_pos, m_input, m_mask, m_modifers) \
{ \
_CREATE_GUI_MOUSE_EVENT(m_screen_pos, m_input, m_mask, m_modifers); \
_SEND_DISPLAYSERVER_EVENT(event); \
MessageQueue::get_singleton()->flush(); \
}
#define SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT(m_screen_pos, m_input, m_mask, m_modifers) \
{ \ { \
_CREATE_GUI_MOUSE_EVENT(m_object, m_local_pos, m_input, m_mask, m_modifers); \ _CREATE_GUI_MOUSE_EVENT(m_screen_pos, m_input, m_mask, m_modifers); \
event->set_pressed(false); \
_SEND_DISPLAYSERVER_EVENT(event); \ _SEND_DISPLAYSERVER_EVENT(event); \
MessageQueue::get_singleton()->flush(); \ MessageQueue::get_singleton()->flush(); \
} }
#define SEND_GUI_MOUSE_BUTTON_RELEASED_EVENT(m_object, m_local_pos, m_input, m_mask, m_modifers) \ #define SEND_GUI_DOUBLE_CLICK(m_screen_pos, m_modifers) \
{ \ { \
_CREATE_GUI_MOUSE_EVENT(m_object, m_local_pos, m_input, m_mask, m_modifers); \ _CREATE_GUI_MOUSE_EVENT(m_screen_pos, MouseButton::LEFT, 0, m_modifers); \
event->set_pressed(false); \ event->set_double_click(true); \
_SEND_DISPLAYSERVER_EVENT(event); \ _SEND_DISPLAYSERVER_EVENT(event); \
MessageQueue::get_singleton()->flush(); \ MessageQueue::get_singleton()->flush(); \
}
#define SEND_GUI_DOUBLE_CLICK(m_object, m_local_pos, m_modifers) \
{ \
_CREATE_GUI_MOUSE_EVENT(m_object, m_local_pos, MouseButton::LEFT, 0, m_modifers); \
event->set_double_click(true); \
_SEND_DISPLAYSERVER_EVENT(event); \
MessageQueue::get_singleton()->flush(); \
} }
// We toggle _print_error_enabled to prevent display server not supported warnings. // We toggle _print_error_enabled to prevent display server not supported warnings.
#define SEND_GUI_MOUSE_MOTION_EVENT(m_object, m_local_pos, m_mask, m_modifers) \ #define SEND_GUI_MOUSE_MOTION_EVENT(m_screen_pos, m_mask, m_modifers) \
{ \ { \
bool errors_enabled = CoreGlobals::print_error_enabled; \ bool errors_enabled = CoreGlobals::print_error_enabled; \
CoreGlobals::print_error_enabled = false; \ CoreGlobals::print_error_enabled = false; \
Ref<InputEventMouseMotion> event; \ Ref<InputEventMouseMotion> event; \
event.instantiate(); \ event.instantiate(); \
event->set_position(m_local_pos); \ event->set_position(m_screen_pos); \
event->set_button_mask(m_mask); \ event->set_button_mask(m_mask); \
event->set_relative(Vector2(10, 10)); \ event->set_relative(Vector2(10, 10)); \
_UPDATE_EVENT_MODIFERS(event, m_modifers); \ _UPDATE_EVENT_MODIFERS(event, m_modifers); \
_SEND_DISPLAYSERVER_EVENT(event); \ _SEND_DISPLAYSERVER_EVENT(event); \
MessageQueue::get_singleton()->flush(); \ MessageQueue::get_singleton()->flush(); \
CoreGlobals::print_error_enabled = errors_enabled; \ CoreGlobals::print_error_enabled = errors_enabled; \
} }
// Utility class / macros for testing signals // Utility class / macros for testing signals