diff --git a/tests/functionaltests/functionaltests.c b/tests/functionaltests/functionaltests.c index 3c11c701..60ad341c 100644 --- a/tests/functionaltests/functionaltests.c +++ b/tests/functionaltests/functionaltests.c @@ -118,6 +118,12 @@ int main(int argc, char* argv[]) { unit_test_setup_teardown(send_enable_carbons, init_prof_test, close_prof_test), + unit_test_setup_teardown(connect_with_carbons_enabled, + init_prof_test, + close_prof_test), + unit_test_setup_teardown(send_disable_carbons, + init_prof_test, + close_prof_test), }; return run_tests(all_tests); diff --git a/tests/functionaltests/proftest.c b/tests/functionaltests/proftest.c index 613c2c7a..4f641821 100644 --- a/tests/functionaltests/proftest.c +++ b/tests/functionaltests/proftest.c @@ -234,5 +234,5 @@ prof_connect(void) exp_timeout = 30; assert_true(prof_output_regex("stabber@localhost logged in successfully, .+online.+ \\(priority 0\\)\\.")); exp_timeout = 10; - stbbr_wait_for("prof_presence_1"); + stbbr_wait_for("prof_presence_*"); } diff --git a/tests/functionaltests/test_carbons.c b/tests/functionaltests/test_carbons.c index 3ea03f98..f0a8214b 100644 --- a/tests/functionaltests/test_carbons.c +++ b/tests/functionaltests/test_carbons.c @@ -22,3 +22,29 @@ send_enable_carbons(void **state) "" )); } + +void +connect_with_carbons_enabled(void **state) +{ + prof_input("/carbons on"); + + prof_connect(); + + assert_true(stbbr_received( + "" + )); +} + +void +send_disable_carbons(void **state) +{ + prof_input("/carbons on"); + + prof_connect(); + + prof_input("/carbons off"); + + assert_true(stbbr_received( + "" + )); +} diff --git a/tests/functionaltests/test_carbons.h b/tests/functionaltests/test_carbons.h index 2a1263ad..6f756d33 100644 --- a/tests/functionaltests/test_carbons.h +++ b/tests/functionaltests/test_carbons.h @@ -1 +1,3 @@ void send_enable_carbons(void **state); +void connect_with_carbons_enabled(void **state); +void send_disable_carbons(void **state);