public void ClientConnectedTest() { var finish = DateTime.Now.AddSeconds(10); var websocket = new MockTwitchWebSocket(); var client = new TwitchClient(websocket); var onConnectedFired = false; client.Initialize(new Models.ConnectionCredentials(TWITCH_BOT_USERNAME, "OAuth")); client.OnConnected += (sender, e) => { onConnectedFired = true; }; client.Connect(); websocket.ReceiveMessage($":tmi.twitch.tv 001 {TWITCH_BOT_USERNAME} :Welcome, GLHF!"); websocket.ReceiveMessage($":tmi.twitch.tv 002 {TWITCH_BOT_USERNAME} :Your host is tmi.twitch.tv"); websocket.ReceiveMessage($":tmi.twitch.tv 003 {TWITCH_BOT_USERNAME} :This server is rather new"); websocket.ReceiveMessage($":tmi.twitch.tv 004 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 375 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 372 {TWITCH_BOT_USERNAME} :You are in a maze of twisty passages, all alike."); websocket.ReceiveMessage($":tmi.twitch.tv 376 {TWITCH_BOT_USERNAME} :>"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/membership"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/commands"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/tags"); while (!onConnectedFired && DateTime.Now < finish) { } Assert.IsTrue(onConnectedFired); }
public void ClientCanReceiveData() { var finish = DateTime.Now.AddSeconds(10); var websocket = new MockTwitchWebSocket(); var client = new TwitchClient(websocket); var onSendReceiveDataFired = false; client.Initialize(new Models.ConnectionCredentials(TWITCH_BOT_USERNAME, "OAuth")); client.OnSendReceiveData += (sender, e) => { onSendReceiveDataFired = true; }; client.Connect(); websocket.ReceiveMessage($":tmi.twitch.tv 001 {TWITCH_BOT_USERNAME} :Welcome, GLHF!"); while (!onSendReceiveDataFired && DateTime.Now < finish) { } Assert.IsTrue(onSendReceiveDataFired); }
public void ClientNewChatterRitualTest() { var finish = DateTime.Now.AddSeconds(10); var websocket = new MockTwitchWebSocket(); var client = new TwitchClient(websocket); var newChatterRitualFired = false; client.Initialize(new Models.ConnectionCredentials(TWITCH_BOT_USERNAME, "OAuth")); client.OnRitualNewChatter += (sender, e) => { newChatterRitualFired = true; }; client.OnConnected += (sender, e) => { websocket.ReceiveMessage( "@badges=subscriber/0;color=#0000FF;display-name=KittyJinxu;emotes=30259:0-6;id=1154b7c0-8923-464e-a66b-3ef55b1d4e50;login=kittyjinxu;mod=0;msg-id=ritual;msg-param-ritual-name=new_chatter;room-id=35740817;subscriber=1;system-msg=@KittyJinxu\\sis\\snew\\shere.\\sSay\\shello!;tmi-sent-ts=1514387871555;turbo=0;user-id=187446639;user-type= USERNOTICE #thorlar kittyjinxu > #thorlar: HeyGuys"); }; client.Connect(); websocket.ReceiveMessage($":tmi.twitch.tv 001 {TWITCH_BOT_USERNAME} :Welcome, GLHF!"); websocket.ReceiveMessage($":tmi.twitch.tv 002 {TWITCH_BOT_USERNAME} :Your host is tmi.twitch.tv"); websocket.ReceiveMessage($":tmi.twitch.tv 003 {TWITCH_BOT_USERNAME} :This server is rather new"); websocket.ReceiveMessage($":tmi.twitch.tv 004 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 375 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 372 {TWITCH_BOT_USERNAME} :You are in a maze of twisty passages, all alike."); websocket.ReceiveMessage($":tmi.twitch.tv 376 {TWITCH_BOT_USERNAME} :>"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/membership"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/commands"); websocket.ReceiveMessage(":tmi.twitch.tv CAP * ACK :twitch.tv/tags"); while (!newChatterRitualFired && DateTime.Now < finish) { } Assert.IsTrue(newChatterRitualFired); }
public void ClientCanJoinChannels() { var Finish = DateTime.Now.AddSeconds(10); var websocket = new MockTwitchWebSocket(); var client = new TwitchClient(websocket, null); var onJoinChannelFired = false; client.Initialize(new Models.ConnectionCredentials(TWITCH_BOT_USERNAME, "OAuth")); client.OnConnected += (object sender, Events.OnConnectedArgs e) => { client.JoinChannel(TWITCH_CHANNEL); websocket.ReceiveMessage($":{TWITCH_BOT_USERNAME}!{TWITCH_BOT_USERNAME}@{TWITCH_BOT_USERNAME}.tmi.twitch.tv JOIN #{TWITCH_CHANNEL}"); }; client.OnJoinedChannel += (object sender, Events.OnJoinedChannelArgs e) => { onJoinChannelFired = true; }; client.Connect(); websocket.ReceiveMessage($":tmi.twitch.tv 001 {TWITCH_BOT_USERNAME} :Welcome, GLHF!"); websocket.ReceiveMessage($":tmi.twitch.tv 002 {TWITCH_BOT_USERNAME} :Your host is tmi.twitch.tv"); websocket.ReceiveMessage($":tmi.twitch.tv 003 {TWITCH_BOT_USERNAME} :This server is rather new"); websocket.ReceiveMessage($":tmi.twitch.tv 004 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 375 {TWITCH_BOT_USERNAME} :-"); websocket.ReceiveMessage($":tmi.twitch.tv 372 {TWITCH_BOT_USERNAME} :You are in a maze of twisty passages, all alike."); websocket.ReceiveMessage($":tmi.twitch.tv 376 {TWITCH_BOT_USERNAME} :>"); websocket.ReceiveMessage($":tmi.twitch.tv CAP * ACK :twitch.tv/membership"); websocket.ReceiveMessage($":tmi.twitch.tv CAP * ACK :twitch.tv/commands"); websocket.ReceiveMessage($":tmi.twitch.tv CAP * ACK :twitch.tv/tags"); while (!onJoinChannelFired && DateTime.Now < Finish) { } Assert.IsTrue(onJoinChannelFired); }