src/test.c
changeset 46 0c13bca53ae1
parent 45 71e65564afd2
child 47 7d4094eb3117
equal deleted inserted replaced
45:71e65564afd2 46:0c13bca53ae1
   376     // create the irc_net
   376     // create the irc_net
   377     net_info.raw_sock = SOCK_TEST_BASE(sock);
   377     net_info.raw_sock = SOCK_TEST_BASE(sock);
   378     assert_success(irc_net_create(&net, &net_info, &err));
   378     assert_success(irc_net_create(&net, &net_info, &err));
   379 
   379 
   380     // add a channel
   380     // add a channel
       
   381     log_info("test offline irc_net_add_chan");
   381     assert((chan = irc_net_add_chan(net, &chan_info)));
   382     assert((chan = irc_net_add_chan(net, &chan_info)));
   382     assert(!chan->joining && !chan->joined);
   383     assert(!chan->joining && !chan->joined);
   383     assert_success(irc_chan_add_callbacks(chan, &_chan_callbacks, &ctx));
   384     assert_success(irc_chan_add_callbacks(chan, &_chan_callbacks, &ctx));
   384     ctx.chan = chan;
   385     ctx.chan = chan;
   385     
   386     
   386     // test register output
   387     // test register output
   387     assert_sock_data(sock, "NICK nick\r\nUSER user 0 * realname\r\n");
   388     assert_sock_data(sock, "NICK nick\r\nUSER user 0 * realname\r\n");
   388     
   389     
   389     // registration reply
   390     // registration reply
       
   391     log_info("test irc_conn_on_RPL_WELCOME");
   390     sock_test_add_recv_str(sock, "001 mynick :Blaa blaa blaa\r\n");
   392     sock_test_add_recv_str(sock, "001 mynick :Blaa blaa blaa\r\n");
   391     assert(net->conn->registered);
   393     assert(net->conn->registered);
   392     assert_strcmp(net->conn->nickname, "mynick");
   394     assert_strcmp(net->conn->nickname, "mynick");
   393     
   395     
   394     // JOIN request
   396     // JOIN request
       
   397     log_info("test irc_net_conn_registered -> irc_chan_join");
   395     assert(chan->joining);
   398     assert(chan->joining);
   396     assert_sock_data(sock, "JOIN #test\r\n");
   399     assert_sock_data(sock, "JOIN #test\r\n");
   397 
   400 
   398     // JOIN reply
   401     // JOIN reply
       
   402     log_info("test irc_chan_on_JOIN");
   399     sock_test_add_recv_str(sock, ":mynick!user@host JOIN #test\r\n");
   403     sock_test_add_recv_str(sock, ":mynick!user@host JOIN #test\r\n");
   400     assert(!chan->joining && chan->joined);
   404     assert(!chan->joining && chan->joined);
   401     assert(ctx.on_chan_self_join);
   405     assert(ctx.on_chan_self_join);
       
   406 
       
   407     // test errors by setting EOF
       
   408     log_info("test irc_net_error");
       
   409     sock_test_set_recv_eof(sock);
       
   410     assert(net->conn == NULL);
   402 }
   411 }
   403 
   412 
   404 /**
   413 /**
   405  * Test definition
   414  * Test definition
   406  */
   415  */
   432     for (test = _tests; test->name; test++) {
   441     for (test = _tests; test->name; test++) {
   433         log_info("Running test: %s", test->name);
   442         log_info("Running test: %s", test->name);
   434 
   443 
   435         test->func();
   444         test->func();
   436     }
   445     }
   437 }
   446 
       
   447     log_info("done");
       
   448 }