コード例 #1
0
        public void TestAddPerformers()
        {
            stage.AddPerformer(performer1);
            Assert.AreEqual(1, stage.Performers.Count());

            Assert.Throws <ArgumentException>(() => stage.AddPerformer(performer2));
            Assert.Throws <ArgumentNullException>(() => stage.AddPerformer(null));
        }
コード例 #2
0
 public void AddPerformerIsNull()
 {
     performer = null;
     Assert.Throws <ArgumentNullException>(() =>
     {
         stage.AddPerformer(performer);
     });
 }
コード例 #3
0
        public void Add_Performer_Should_Add_Correctly()
        {
            var stage = new Stage();

            stage.AddPerformer(new Performer("Ivan", "Ivanov", 20));
            stage.AddPerformer(new Performer("Ivan1", "Ivanov2", 20));

            Assert.That(stage.Performers.Count, Is.EqualTo(2));
            Assert.That(stage.Performers.Any(p => p.FullName == "Ivan Ivanov"), Is.EqualTo(true));
        }
コード例 #4
0
        public void Check_Ctor_Setters()
        {
            performers = new List <Performer> {
                performenr1
            };
            stage.AddPerformer(performenr1);

            Assert.AreEqual(stage.Performers, performers);
        }
コード例 #5
0
        public void RegisterSetTest()
        {
            ISet set = new Short("Set1");

            IStage stage = new Stage();

            int      hours1        = 0;
            int      minutes1      = 1;
            int      seconds1      = 2;
            TimeSpan songDuration1 = new TimeSpan(hours1, minutes1, seconds1);

            ISong song = new Song("Song1", songDuration1);

            int      hours2        = 0;
            int      minutes2      = 1;
            int      seconds2      = 2;
            TimeSpan songDuration2 = new TimeSpan(hours2, minutes2, seconds2);

            ISong song2 = new Song("Song2", songDuration2);


            IPerformer performer1 = new Performer("Gosho", 24);
            Drums      drum       = new Drums();

            performer1.AddInstrument(drum);

            IPerformer performer2 = new Performer("Pesho", 19);
            Guitar     guitar     = new Guitar();
            Drums      drum2      = new Drums();

            performer2.AddInstrument(guitar);

            set.AddPerformer(performer1);
            set.AddPerformer(performer2);
            set.AddSong(song);
            set.AddSong(song2);

            stage.AddSet(set);
            stage.AddSong(song);
            stage.AddSong(song2);
            stage.AddPerformer(performer1);
            stage.AddPerformer(performer2);

            SetController setController = new SetController(stage);

            string expected = "1. Set1:" + Environment.NewLine + "-- 1. Song1 (01:02)" + Environment.NewLine + "-- 2. Song2 (01:02)" + Environment.NewLine + "-- Set Successful";

            string actual = setController.PerformSets();

            Assert.That(actual, Is.EqualTo(expected));
        }
        public void TestWhetherTheControllerGivesCorrectOutput()
        {
            var set1 = new Short("set1");

            var performer  = new Performer("Bat nasko", 30);
            var instrument = new Guitar();

            performer.AddInstrument(instrument);
            var song = new Song("name", new TimeSpan(0, 0, 10, 0));

            var stage = new Stage();

            set1.AddPerformer(performer);
            set1.AddSong(song);
            stage.AddSet(set1);
            stage.AddPerformer(performer);
            stage.AddSong(song);

            var controller   = new SetController(stage);
            var stringOutput = controller.PerformSets();

            var expectedResult = "1. set1:\r\n-- 1. name (10:00)\r\n-- Set Successful";

            Assert.AreEqual(expectedResult, stringOutput);
        }
コード例 #7
0
        public void PerformCommandReturnsSuccessResult()
        {
            IStage stage = new Stage();
            ISet   set   = new Short("Set1");

            TimeSpan duration = TimeSpan.FromSeconds((1 * 60) + 2);
            ISong    song     = new Song("Song1", duration);

            IPerformer performer = new Performer("Gosho", 20);

            performer.AddInstrument(new Guitar());

            set.AddPerformer(performer);
            set.AddSong(song);

            stage.AddSong(song);

            stage.AddSet(set);
            stage.AddSong(song);
            stage.AddPerformer(performer);

            ISetController setController = new SetController(stage);

            string actual   = "1. Set1:\r\n-- 1. Song1 (01:02)\r\n-- Set Successful";
            string expected = setController.PerformSets();

            Assert.AreEqual(actual, expected);
        }
コード例 #8
0
        public void AddPerformerThrowExceptionWhenAgeBelowEighteen()
        {
            Stage     stage     = new Stage();
            Performer performer = new Performer("name", "lastName", 10);

            Assert.Throws <ArgumentException>(() => stage.AddPerformer(performer));
        }
コード例 #9
0
        public void SetControllerShouldReturnSuccessMessage()
        {
            var stage = new Stage();

            var performer = new Performer("Ivo", 26);

            IInstrument instrument = new Guitar();

            performer.AddInstrument(instrument);

            stage.AddPerformer(performer); //

            ISong song = new Song("Chico loco", new TimeSpan(0, 2, 30));

            stage.AddSong(song); //

            ISet set = new Short("ShortSet");

            stage.AddSet(set);

            var setController = new SetController(stage);

            var actualResult   = setController.PerformSets();
            var expectedResult = "1. ShortSet:\r\n-- Did not perform";

            Assert.AreEqual(expectedResult, actualResult);
        }
コード例 #10
0
        public void SetControllerShouldWearDownInstruments()
        {
            Performer   performer  = new Performer("Ivo", 26);
            IInstrument instrument = new Guitar();

            performer.AddInstrument(instrument);

            ISet set = new Short("ShortSet");

            set.AddPerformer(performer);
            ISong song = new Song("Chico loco", new TimeSpan(0, 2, 30));

            set.AddSong(song);

            var stage = new Stage();

            stage.AddPerformer(performer);
            stage.AddSong(song);
            stage.AddSet(set);

            var setController = new SetController(stage);

            var instrumentWearBefore = instrument.Wear;

            setController.PerformSets();

            var instrumentWearAfter = instrument.Wear;

            Assert.AreNotEqual(instrumentWearAfter, instrumentWearBefore);
        }
コード例 #11
0
        public void Test()
        {
            IStage         stage         = new Stage();
            ISetController setController = new SetController(stage);
            //IInstrument instrument = new Guitar();

            IPerformer performer = new Performer("Gosho", 24);

            //performer.AddInstrument(instrument);
            stage.AddPerformer(performer);

            ISong song = new Song("Rocks down", new TimeSpan(0, 0, 0, 55));

            stage.AddSong(song);

            ISet set = new Long("Set1");

            set.AddPerformer(performer);
            set.AddSong(song);
            stage.AddSet(set);

            string result = setController.PerformSets();

            Assert.AreEqual("1. Set1:\r\n-- Did not perform", result);
        }
コード例 #12
0
        public void TestControllerDidNotPerformSetWithBrokenInstruments()
        {
            var set1       = new Short("set1");
            var performer  = new Performer("Danny", 38);
            var instrument = new Microphone();

            performer.AddInstrument(instrument);
            var song = new Song("name", new TimeSpan(0, 0, 5, 0));

            var stage = new Stage();

            set1.AddPerformer(performer);
            set1.AddSong(song);
            stage.AddSet(set1);
            stage.AddPerformer(performer);
            stage.AddSong(song);

            var controller = new SetController(stage);

            controller.PerformSets();
            controller.PerformSets();
            var stringOutput = controller.PerformSets();
            var expected     = "1. set1:" + Environment.NewLine + "-- Did not perform";

            Assert.AreEqual(expected, stringOutput);
        }
コード例 #13
0
        public void PerformSetsShouldWearDownInstrument()
        {
            Stage         stage         = new Stage();
            SetController setController = new SetController(stage);
            Set           set           = new Short("WestSet");
            IPerformer    performer     = new Performer("Name", 18);
            Song          song          = new Song("SongName", new TimeSpan(0, 2, 30));
            Instrument    instrument    = new Microphone();

            performer.AddInstrument(instrument);
            set.AddSong(song);
            set.AddPerformer(performer);
            stage.AddSet(set);
            stage.AddPerformer(performer);

            setController.PerformSets();

            var currPerformer = stage.GetPerformer("Name");
            var instruments   = currPerformer.Instruments;

            var actual   = instruments.First().Wear;
            var expected = 20;

            Assert.AreEqual(expected, actual);
        }
コード例 #14
0
        public void PerforSetsTest()
        {
            IStage         stage         = new Stage();
            ISetController setController = new SetController(stage);
            ISet           set           = new Short("Set1");
            ISet           set2          = new Short("Set2");

            stage.AddSet(set);
            stage.AddSet(set2);
            IPerformer  performer = new Performer("Pesho", 23);
            IInstrument guitar    = new Guitar();

            stage.AddPerformer(performer);
            set.AddPerformer(performer);
            performer.AddInstrument(guitar);
            ISong song = new Song("Song1", new System.TimeSpan(0, 5, 0));

            stage.AddSong(song);
            set.AddSong(song);

            string expectedResult = "1. Set1:" + "\r\n" +
                                    "-- 1. Song1 (05:00)" + "\r\n" +
                                    "-- Set Successful" + "\r\n" +
                                    "2. Set2:" + "\r\n" +
                                    "-- Did not perform";


            string actualResult = setController.PerformSets();

            Assert.That(actualResult, Is.EqualTo(expectedResult).NoClip);
            Assert.That(guitar.Wear, Is.EqualTo(40));
        }
コード例 #15
0
ファイル: StageTests.cs プロジェクト: zhekov90/CSharp-OOP
        public void addCorrectPerformer()
        {
            Performer performer = new Performer("ivan", "ivanov", 20);
            Stage     stage     = new Stage();

            stage.AddPerformer(performer); Assert.AreEqual("ivan ivanov", performer.FullName);
        }
        public void TestWhetherTheControllerFailsToPerform()
        {
            var set1 = new Short("set1");

            var performer  = new Performer("Woah", 39);
            var instrument = new Microphone();

            performer.AddInstrument(instrument);
            var song = new Song("WoahButSong", new TimeSpan(0, 0, 5, 0));

            var stage = new Stage();

            set1.AddPerformer(performer);
            set1.AddSong(song);
            stage.AddSet(set1);
            stage.AddPerformer(performer);
            stage.AddSong(song);

            var controller = new SetController(stage);

            controller.PerformSets();
            controller.PerformSets();
            var stringOutput = controller.PerformSets();

            var expectedResult = "1. set1:\r\n-- Did not perform";

            Assert.AreEqual(expectedResult, stringOutput);
        }
コード例 #17
0
        public void testPerformerAgeThrows()
        {
            var s = new Stage();

            Assert.Throws <ArgumentException>(()
                                              => s.AddPerformer(new Performer("alp", "aaa", 16)));
        }
コード例 #18
0
        public void performerValid()
        {
            var s = new Stage();

            s.AddPerformer(new Performer("alp", "aaa", 888));
            Assert.AreEqual(1, s.Performers.Count);
        }
コード例 #19
0
        public void TestCanPerformReturnsTrue()
        {
            IStage stage = new Stage();
            ISet   set   = new Short("Shorty");

            stage.AddSet(set);

            IPerformer perf = new Performer("HrupHrupAzSumTup", 22);

            perf.AddInstrument(new Guitar());

            stage.AddPerformer(perf);

            ISong song = new Song("hrup", new System.TimeSpan(0, 5, 0));

            stage.AddSong(song);

            set.AddSong(song);

            set.AddPerformer(perf);

            ISetController setController = new SetController(stage);

            setController.PerformSets();

            Assert.That(() => stage.Sets.First().CanPerform(), Is.EqualTo(true));
        }
コード例 #20
0
        public void TestPerformanceSuccessful()
        {
            IStage stage = new Stage();
            ISet   set   = new Short("Shorty");

            stage.AddSet(set);

            IPerformer perf = new Performer("HrupHrupAzSumTup", 22);

            perf.AddInstrument(new Guitar());

            stage.AddPerformer(perf);

            ISong song = new Song("hrup", new System.TimeSpan(0, 5, 0));

            stage.AddSong(song);

            set.AddSong(song);

            set.AddPerformer(perf);

            ISetController setController = new SetController(stage);

            setController.PerformSets();

            Assert.That(() => setController.PerformSets(), Is.EqualTo("1. Shorty:\r\n" +
                                                                      "-- 1. hrup (05:00)\r\n" +
                                                                      "-- Set Successful"));
        }
コード例 #21
0
        public void TestInstrumentWearsDownAfterPerformance()
        {
            IStage stage = new Stage();
            ISet   set   = new Short("Shorty");

            stage.AddSet(set);

            IPerformer perf = new Performer("HrupHrupAzSumTup", 22);

            perf.AddInstrument(new Guitar());

            stage.AddPerformer(perf);

            ISong song = new Song("hrup", new System.TimeSpan(0, 5, 0));

            stage.AddSong(song);

            set.AddSong(song);

            set.AddPerformer(perf);

            ISetController setController = new SetController(stage);

            setController.PerformSets();

            Assert.That(perf.Instruments.First().Wear, Is.EqualTo(40));
        }
コード例 #22
0
        public void InstrumentsToRepair()
        {
            Stage stage = new Stage();

            ISetController setController = new SetController(stage);
            Performer      performer     = new Performer("Ivan", 24);

            performer.AddInstrument(new Drums());
            stage.AddPerformer(performer);
            Song song = new Song("pesen", new TimeSpan(0, 3, 0));
            Set  set  = new Medium("Set1");

            set.AddPerformer(performer);
            set.AddSong(song);
            stage.AddSet(set);

            int expectedInstrumets = 1;

            setController.PerformSets();

            var instrumentsToRepair = stage.Performers
                                      .SelectMany(p => p.Instruments)
                                      .Where(i => i.Wear <= 100)
                                      .ToArray();

            Assert.That(instrumentsToRepair.Length, Is.EqualTo(expectedInstrumets));
        }
コード例 #23
0
        public void TestInstrumentsGetBroken()
        {
            IStage stage = new Stage();
            ISet   set   = new Short("Set1");

            TimeSpan duration = TimeSpan.FromSeconds((1 * 60) + 2);
            ISong    song     = new Song("Song1", duration);

            IPerformer performer = new Performer("Gosho", 20);

            IInstrument instrument = new Guitar();

            instrument.WearDown();
            instrument.WearDown();

            performer.AddInstrument(instrument);

            set.AddPerformer(performer);
            set.AddSong(song);

            stage.AddSong(song);

            stage.AddSet(set);
            stage.AddSong(song);
            stage.AddPerformer(performer);

            ISetController setController = new SetController(stage);

            string actual   = "1. Set1:\r\n-- Did not perform";
            string expected = setController.PerformSets();

            Assert.AreEqual(actual, expected);
        }
コード例 #24
0
ファイル: StageTests.cs プロジェクト: ValentinVPK/SoftUni
        public void AddPerformer_ThrowException_WhenNull()
        {
            Performer nullPerformer = null;

            Assert.Throws <ArgumentNullException>(() =>
            {
                stage.AddPerformer(nullPerformer);
            });
        }
コード例 #25
0
        public void Test_AddPerformer_WithInvalidParameters()
        {
            var invalidPerformer = new Performer("Niki", "Nikov", 16);


            var ex = Assert.Throws <ArgumentException>(() =>
            {
                stage.AddPerformer(invalidPerformer);
            }
                                                       );

            Assert.AreEqual("You can only add performers that are at least 18.", ex.Message);
        }
コード例 #26
0
        public void AddPerformer_Properly()
        {
            Stage stage = new Stage();

            stage.AddPerformer(new Performer("Gosho", "Petkov", 20));

            Assert.AreEqual(1, stage.Performers.Count);
        }
コード例 #27
0
        public void Add_Song_To_Performer_Should_Throw_An_Exception_If_The_Song_Is_Not_Existing()
        {
            var stage = new Stage();

            stage.AddPerformer(new Performer("Ri", "a", 20));

            Assert.Throws <ArgumentException>(() => stage.AddSongToPerformer("Frog", "Ri a"));
        }
コード例 #28
0
ファイル: StageTests.cs プロジェクト: zhekov90/CSharp-OOP
        public void AddPerformerShouldWork()
        {
            Performer performer = new Performer("ivan", "ivanov", 20);
            Stage     stage     = new Stage();

            stage.AddPerformer(performer);
            Assert.AreEqual(stage.Performers.Count, 1);
        }
コード例 #29
0
        public void AddingPerformer_WhenValid()
        {
            stage.AddPerformer(performer);

            Assert.AreEqual(stage.Performers.Count, 1);
            CollectionAssert.Contains(stage.Performers, performer);
        }
コード例 #30
0
        public void Add_Song_To_Performer_Should_Be_Add_Successfully()
        {
            var stage = new Stage();

            stage.AddSong(new Song("A", new TimeSpan(0, 3, 21)));
            stage.AddPerformer(new Performer("Ivan", "Ivanov", 30));

            stage.AddSongToPerformer("A", "Ivan Ivanov");
        }