public void CreaturesFactory_WhenInvalidNameIsPassed_ShouldThrowArgumentException()
        {
            //var factory = new CreaturesFactory();
            var factory = new ExtendedCreaturesFactory();

            Assert.Throws <ArgumentException>(() => factory.CreateCreature("Gosho"));
        }
Exemple #2
0
        public void CreaturesFactory_WhenValidNameIsPassed_ShouldReturnExpectedType(string name)
        {
            var factory  = new ExtendedCreaturesFactory(); // new CreaturesFactory();
            var creature = factory.CreateCreature(name);

            Assert.AreEqual(name, creature.GetType().Name);
        }
Exemple #3
0
        public void CreateCreature_ShouldReturnTheCorrespondingCreatureInstance_WhenTheStringPassedRepresentsValidCreature(string creatureName, Type expectedCreatureType)
        {
            var extendedCreaturesFactory = new ExtendedCreaturesFactory();

            var actualCreature = extendedCreaturesFactory.CreateCreature(creatureName);

            Assert.IsInstanceOf(expectedCreatureType, actualCreature);
        }
Exemple #4
0
        public void CreateCreature_ShouldReturnCorrespondingCreatureBasedOnInput_IfMethodIsInvoked(string creatureName)
        {
            var creaturesFactory = new ExtendedCreaturesFactory();

            var creature = creaturesFactory.CreateCreature(creatureName);

            Assert.IsInstanceOf <Creature>(creature);
        }
Exemple #5
0
        public void ReturnTheCorrectCreatureType_WhenValidCreatureIsPassed(string creature, Type type)
        {
            var factory = new ExtendedCreaturesFactory();

            var cr = factory.CreateCreature(creature);

            Assert.AreEqual(type, cr.GetType());
        }
Exemple #6
0
        public void CreateCreature_ShouldThrowArgumentException_WhenTheStringPassedRepresentsInvalidCreature()
        {
            var extendedCreaturesFactory = new ExtendedCreaturesFactory();
            var invalidCreatureName      = "fhauisfqiuwf21721787gas8gf12";

            var exc = Assert.Throws <ArgumentException>(
                () => extendedCreaturesFactory.CreateCreature(invalidCreatureName));

            StringAssert.Contains("Invalid creature type", exc.Message);
        }
        public void CreateCreature_ShouldThrow_IfPassedStringIsNullOrEmpty()
        {
            // Arrange
            var creatureTypeName = string.Empty;
            var creaturesFactory = new ExtendedCreaturesFactory();

            // Act and Assert
            var resultingException = Assert.Throws <ArgumentNullException>(() => creaturesFactory.CreateCreature(creatureTypeName));

            Assert.IsTrue(resultingException.Message.Contains("Creature Name is null or empty"));
        }
Exemple #8
0
        public void CreaturesFactory_WhenValidNameIsPassed_ShouldReturnExpectedType(string name, Type expectedCreature)
        {
            // Arrange
            var factory = new ExtendedCreaturesFactory();

            // Act
            var creature = factory.CreateCreature(name);

            // Assert
            Assert.IsInstanceOf(expectedCreature.GetType(), creature.GetType());
        }
        public void CreateCreature_CreatesAnInstanceOfTheCorrectType(string creatureTypeName, Type expectedType)
        {
            // Arrange
            var creaturesFactory = new ExtendedCreaturesFactory();

            // Act
            var resultingInstance  = creaturesFactory.CreateCreature(creatureTypeName);
            var actualInstanceType = resultingInstance.GetType();

            // Assert
            Assert.AreEqual(expectedType, actualInstanceType);
        }
Exemple #10
0
        public void CreaturesFactory_WhenInvalidNameIsNotPassed_ShouldThrowArgumentExceptionWithExpectedMassage()
        {
            var factory = new ExtendedCreaturesFactory();

            try
            {
                factory.CreateCreature("Gosho");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual($"Invalid creature type \"Gosho\"!", ex.Message);
            }
        }
Exemple #11
0
        public void CreateCreature_ShouldThrowArgumentExceptionWithCorrectMsg_IfStringIsInvalid()
        {
            var creaturesFactory = new ExtendedCreaturesFactory();

            var expectedExceptionMsg    = "Invalid creature type";
            var nonexistentCreatureName = "nonexistent";

            Assert.That(() =>
                        creaturesFactory.CreateCreature(nonexistentCreatureName),
                        Throws.ArgumentException.With.Message.Contains(expectedExceptionMsg));

            //var ex = Assert.Throws<ArgumentException>(() => creaturesFactory.CreateCreature(nonexistentCreatureName));
            //Assert.IsTrue(ex.Message.Contains(expectedExceptionMsg));
        }
Exemple #12
0
        public void CreaturesFactory_WhenInValidNameIsPassed_ShouldThrowArgumentExceptionWithExpectedMessage()
        {
            // Arrange
            var factory = new ExtendedCreaturesFactory();

            // Act & Assert (method 1)
            try
            {
                factory.CreateCreature("Gosho");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual($"Invalid creature type \"Gosho\"!", ex.Message);
            }

            //// Act & Assert (method 2)
            // Assert.That(()=>factory.CreateCreature("Gosho"), Throws.ArgumentException.With.Message.Contains($"Invalid creature type \"Gosho\"!"));
        }
Exemple #13
0
        public void ThrowArgumentException_InvalidValueIsPassed()
        {
            var factory = new ExtendedCreaturesFactory();

            Assert.Throws <ArgumentException>(() => factory.CreateCreature("Pesho"));
        }
Exemple #14
0
 public void Init()
 {
     this._factory = new ExtendedCreaturesFactory();
 }