#include #include #include #include #include #include #include #include #include #include "proftest.h" #define CONNECT_CMD "/connect stabber@localhost port 5230\r" #define PASSWORD "password\r" void connect_jid(void **state) { stbbr_for("roster", "" "" "" "" "" "" ); int res = 0; int fd = exp_spawnl("./profanity", NULL); FILE *fp = fdopen(fd, "r+"); if (fp == NULL) { assert_true(FALSE); } setbuf(fp, (char *)0); write(fd, CONNECT_CMD, strlen(CONNECT_CMD)); res = exp_expectl(fd, exp_exact, "Enter password:", 11, exp_end); assert_true(res == 11); write(fd, PASSWORD, strlen(PASSWORD)); res = exp_expectl(fd, exp_exact, "Connecting as stabber@localhost", 12, exp_end); assert_true(res == 12); res = exp_expectl(fd, exp_exact, "stabber@localhost logged in successfully", 13, exp_end); assert_true(res == 13); sleep(1); assert_true(stbbr_verify( "" "" "" )); } //void //connect_jid_requests_roster(void **state) //{ // will_return(ui_ask_password, strdup("password")); // expect_any_cons_show(); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // assert_true(stbbr_verify( // "" // )); //} // //void //connect_jid_sends_presence_after_receiving_roster(void **state) //{ // will_return(ui_ask_password, strdup("password")); // expect_any_cons_show(); // // stbbr_for("roster", // "" // "" // "" // "" // "" // "" // ); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // assert_true(stbbr_verify( // "" // "" // "" // )); //} // //void //connect_jid_requests_bookmarks(void **state) //{ // will_return(ui_ask_password, strdup("password")); // expect_any_cons_show(); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // assert_true(stbbr_verify( // "" // "" // "" // "" // "" // )); //} // //void //connect_bad_password(void **state) //{ // will_return(ui_ask_password, strdup("badpassword")); // // expect_cons_show("Connecting as stabber@localhost"); // expect_cons_show_error("Login failed."); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // jabber_conn_status_t status = jabber_get_connection_status(); // assert_true(status == JABBER_DISCONNECTED); //} // //void //show_presence_updates(void **state) //{ // will_return(ui_ask_password, strdup("password")); // expect_any_cons_show(); // // stbbr_for("roster", // "" // "" // "" // "" // "" // "" // ); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // stbbr_send( // "" // "dnd" // "busy!" // "" // "" // "chat" // "Talk to me!" // "" // "" // "away" // "Out of office" // "" // ); // // Resource *resource1 = resource_new("mobile", RESOURCE_DND, "busy!", 0); // expect_string(ui_contact_online, barejid, "buddy1@localhost"); // expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource1); // expect_value(ui_contact_online, last_activity, NULL); // // Resource *resource2 = resource_new("laptop", RESOURCE_CHAT, "Talk to me!", 0); // expect_string(ui_contact_online, barejid, "buddy1@localhost"); // expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource2); // expect_value(ui_contact_online, last_activity, NULL); // // Resource *resource3 = resource_new("work", RESOURCE_AWAY, "Out of office", 0); // expect_string(ui_contact_online, barejid, "buddy2@localhost"); // expect_check(ui_contact_online, resource, (CheckParameterValue)resource_equal_check, resource3); // expect_value(ui_contact_online, last_activity, NULL); // // prof_process_xmpp(20); //} // //void //sends_rooms_iq(void **state) //{ // will_return(ui_ask_password, strdup("password")); // // expect_any_cons_show(); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // stbbr_for("confreq", // "" // "" // "" // "" // "" // "" // ); // // cmd_process_input(strdup("/rooms")); // prof_process_xmpp(20); // // assert_true(stbbr_verify_last( // "" // "" // "" // )); //} // //void //multiple_pings(void **state) //{ // will_return(ui_ask_password, strdup("password")); // // expect_any_cons_show(); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // expect_cons_show("Pinged server..."); // expect_any_cons_show(); // expect_cons_show("Pinged server..."); // expect_any_cons_show(); // // stbbr_for("prof_ping_1", // "" // ); // stbbr_for("prof_ping_2", // "" // ); // // cmd_process_input(strdup("/ping")); // prof_process_xmpp(20); // cmd_process_input(strdup("/ping")); // prof_process_xmpp(20); // // assert_true(stbbr_verify( // "" // "" // "" // )); // assert_true(stbbr_verify( // "" // "" // "" // )); //} // //void //responds_to_ping(void **state) //{ // will_return(ui_ask_password, strdup("password")); // // expect_any_cons_show(); // // cmd_process_input(strdup("/connect stabber@localhost port 5230")); // prof_process_xmpp(20); // // stbbr_send( // "" // "" // "" // ); // prof_process_xmpp(20); // // assert_true(stbbr_verify( // "" // )); //}