Ejemplo n.º 1
0
        public void ChatRoom_participants_should_send_and_receive_messages()
        {
            // Arrange
            var(kingChat, king)     = CreateTestUser("King");
            var(kelleyChat, kelley) = CreateTestUser("Kelley");
            var(daveenChat, daveen) = CreateTestUser("Daveen");
            var(rutterChat, _)      = CreateTestUser("Rutter");

            var chatroom = new ChatRoom();

            // Act
            chatroom.Join(king);
            chatroom.Join(kelley);
            king.Send("Hey!");
            kelley.Send("What's up King?");
            chatroom.Join(daveen);
            king.Send("Everything is great, I joined the CrazyChatRoom!");
            daveen.Send("Hey King!");
            king.Send("Hey Daveen");

            // Assert
            Assert.Empty(rutterChat.Output.ToString());

            Assert.Equal(@"[King]: Has joined the channel
[Kelley]: Has joined the channel
[King]: Hey!
[Kelley]: What's up King?
[Daveen]: Has joined the channel
[King]: Everything is great, I joined the CrazyChatRoom!
[Daveen]: Hey King!
[King]: Hey Daveen
", kingChat.Output.ToString());

            Assert.Equal(@"[Kelley]: Has joined the channel
[King]: Hey!
[Kelley]: What's up King?
[Daveen]: Has joined the channel
[King]: Everything is great, I joined the CrazyChatRoom!
[Daveen]: Hey King!
[King]: Hey Daveen
", kelleyChat.Output.ToString());

            Assert.Equal(@"[Daveen]: Has joined the channel
[King]: Everything is great, I joined the CrazyChatRoom!
[Daveen]: Hey King!
[King]: Hey Daveen
", daveenChat.Output.ToString());
        }
Ejemplo n.º 2
0
        static void ChatRoomDemo()
        {
            var room = new ChatRoom();
            var john = new Person("John");
            var jane = new Person("Jane");

            room.Join(john);
            room.Join(jane);
            john.Say("Hi there!");
            jane.Say("Hey how are you?");
            var rick = new Person("Rick");

            room.Join(rick);
            rick.Say("Sup people?");
            jane.PrivateMessage("Rick", "Hey Rick, it's nice to see you");
        }
Ejemplo n.º 3
0
        public static void Main(string[] args)
        {
            var room = new ChatRoom();
            var john = new Person("John");
            var jane = new Person("Jane");

            room.Join(john);
            room.Join(jane);
            john.Say("Hi");
            jane.Say("Oh, hey John");

            var simon = new Person("Simon");

            room.Join(simon);
            simon.Say("Hi, Everyone!");
            jane.PrivateMessage("Simon", "I'm glad for joining us!!!");
        }
Ejemplo n.º 4
0
        private static void Test1()
        {
            var room = new ChatRoom();
            var kane = new Person("Kane");
            var abel = new Person("Abel");

            room.Join(kane);
            room.Join(abel);
            kane.Say("hi");
            abel.Say("hello");
            var simon = new Person("simon");

            room.Join(simon);
            simon.Say("Hello everyone");
            kane.PrivateMessage("Simon", "Glad you joined Simon!");
            Console.WriteLine(string.Join("\n", kane.ChatLog.Select(log => log)));
            Console.WriteLine(string.Join("\n", abel.ChatLog.Select(log => log)));
            Console.WriteLine(string.Join("\n", simon.ChatLog.Select(log => log)));
        }
Ejemplo n.º 5
0
        static void Main()
        {
            var room = new ChatRoom();

            var john = new Person("John");
            var jane = new Person("Jane");

            room.Join(john);
            room.Join(jane);

            john.Say("hi room");
            jane.Say("oh, hey john");

            var simon = new Person("Simon");

            room.Join(simon);
            simon.Say("hi everyone!");

            jane.PrivateMessage("Simon", "glad you could join us!");
        }
        static void Main(string[] args)
        {
            var room = new ChatRoom();

            var john = new Person("John");
            var jane = new Person("Jane");

            room.Join(john);
            room.Join(jane);

            john.Say("hi room");
            jane.Say("oh, hey john");

            var simon = new Person("Simon");

            room.Join(simon);
            simon.Say("hi everyone!");

            jane.PrivateMessage("Simon", "glad you could join us!");


            var cb = new ContainerBuilder();

            cb.RegisterType <EventBroker>().SingleInstance();
            cb.RegisterType <FootballCoach>();
            cb.RegisterType <Ref>();
            cb.Register((c, p) => new FootballPlayer(c.Resolve <EventBroker>(), p.Named <string>("name")));

            using (var c = cb.Build())
            {
                var referee = c.Resolve <Ref>(); // order matters here!
                var coach   = c.Resolve <FootballCoach>();
                var player1 = c.Resolve <FootballPlayer>(new NamedParameter("name", "John"));
                var player2 = c.Resolve <FootballPlayer>(new NamedParameter("name", "Chris"));
                player1.Score();
                player1.Score();
                player1.Score(); // only 2 notifications
                player1.AssaultReferee();
                player2.Score();
            }
        }
Ejemplo n.º 7
0
        public void Test1()
        {
            var room = new ChatRoom();

            var john = new Person("John");
            var jane = new Person("Jane");

            room.Join(john);
            room.Join(jane);

            john.Say("Hi!");

            jane.Say("oh hai dare!");

            var simon = new Person("Simon");

            room.Join(simon);

            simon.Say("hi everyone!");

            jane.PrivateMessage("Simon", "glad you could join us!");
        }
Ejemplo n.º 8
0
 public void Join(ChatRoom chatRoom)
 {
     this.chatRoom = chatRoom;
     chatRoom.Join(this);
 }
Ejemplo n.º 9
0
 public User(string name, ChatRoom chatRoom = null)
 {
     Name          = name;
     this.chatRoom = chatRoom;
     chatRoom?.Join(this);
 }