public void When_notifying_two_observers()
        {
            var observerA = new TextHandOffObserver();
            var observerB = new TextHandOffObserver();

            new[] {observerA, observerB}.CreateMultiObserver().Handoff("TEST!");

            Assert.That(observerA.ReceivedText, Is.EqualTo("TEST!"));
            Assert.That(observerB.ReceivedText, Is.EqualTo("TEST!"));
        }
        public void When_notifying_one_observer()
        {
            var observerA = new TextHandOffObserver();

            var multiObserver = new TextHandoffBroadcast();
            multiObserver.AddSubscriber(observerA);

            multiObserver.Handoff("TEST!");

            Assert.That(observerA.ReceivedText, Is.EqualTo("TEST!"));
        }
        public void When_reading_a_whole_single_line_file_at_once()
        {
            var textObserver = new TextHandOffObserver();
            var reader = new OneLineAtATimeFileReader();

            reader.OnNewTextAvailableNotify(textObserver);
            reader.SetWorkingDirectory(TEST_FILE_PATH);
            reader.SetFilePath("singleLineFile.txt");
            reader.Read();

            Assert.That(textObserver.ReceivedText, Is.EqualTo("42"));
        }