コード例 #1
0
 public void GetSizeListReturnsExceptionIfPositionDoesntExists()
 {
     var position          = new DTOPosition(2, "2", "2");
     var sizeListStub      = new SizeListStub();
     var sizeListValidator = new SizeListValidator(sizeListStub);
     var actual            = sizeListValidator.GetSizeList(position);
 }
コード例 #2
0
        public void CantAddSizeToNonExistingPosition()
        {
            var    size              = new DTOSize(3, "1", new Money(1), new DTOPosition(2, "2", "2"));
            var    sizeListStub      = new SizeListStub();
            var    sizeListValidator = new SizeListValidator(sizeListStub);
            string error             = null;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => error = e.Error;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.AddSize(size);
        }
コード例 #3
0
        public void CantRepeatSizeName_withAddMethod()
        {
            var    size              = new DTOSize(3, "1", new Money(1), new DTOPosition(1, "1", "1"));
            var    sizeListStub      = new SizeListStub();
            var    sizeListValidator = new SizeListValidator(sizeListStub);
            string error             = null;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => error = e.Error;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.AddSize(size);
            Assert.AreEqual("Name 1 is already taken", error);
        }
コード例 #4
0
        public void GetSizeListReturnsListFromDependency()
        {
            var position          = new DTOPosition(1, "1", "1");
            var sizeListStub      = new SizeListStub();
            var sizeListValidator = new SizeListValidator(sizeListStub);
            var expected          = sizeListStub.GetSizeList(position);
            var actual            = sizeListValidator.GetSizeList(position);

            Assert.AreEqual(expected[0], actual[0]);
            Assert.AreEqual(expected[1], actual[1]);
            Assert.AreEqual(expected.Count, actual.Count);
        }
コード例 #5
0
        public void ReraiseEventOfDependency()
        {
            var  size              = new DTOSize(3, "3", new Money(1), new DTOPosition(1, "1", "1"));
            var  sizeListStub      = new SizeListStub();
            var  sizeListValidator = new SizeListValidator(sizeListStub);
            bool invoked           = false;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => invoked = true;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.AddSize(size);
            Assert.IsTrue(invoked);
        }
コード例 #6
0
        public void DeleteNonExistingSizeReturnsError()
        {
            var    size              = new DTOSize(3, "1", new Money(1), new DTOPosition(1, "1", "1"));
            var    sizeListStub      = new SizeListStub();
            var    sizeListValidator = new SizeListValidator(sizeListStub);
            string error             = null;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => error = e.Error;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.DeleteSize(size);
            Assert.AreEqual("Size 1 cannot be found", error);
        }
コード例 #7
0
        public void CanUpdateMoneyOnly()
        {
            var    size              = new DTOSize(1, "1", new Money(2), new DTOPosition(1, "1", "1"));
            var    sizeListStub      = new SizeListStub();
            var    sizeListValidator = new SizeListValidator(sizeListStub);
            string error             = null;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => error = e.Error;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.UpdateSize(size);
            Assert.IsNull(error);
        }
コード例 #8
0
        public void CantUpdateToExistingName()
        {
            var    size              = new DTOSize(2, "1", new Money(1), new DTOPosition(1, "1", "1"));
            var    sizeListStub      = new SizeListStub();
            var    sizeListValidator = new SizeListValidator(sizeListStub);
            string error             = null;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => error = e.Error;

            sizeListValidator.SizeListChanged += handler;
            sizeListValidator.UpdateSize(size);
            Assert.AreEqual("Name 1 is already taken", error);
        }
コード例 #9
0
        public void UpdateSizeMethod_InvokesDependencyAddSizeMethod_IfSizePassesValidation()
        {
            var  size         = new DTOSize(1, "3", new Money(1), new DTOPosition(1, "1", "1"));
            var  sizeListStub = new SizeListStub();
            bool invoked      = false;
            EventHandler <SizeListChangedEventArgs> handler = (sender, e) => invoked = true;

            sizeListStub.SizeListChanged += handler;
            var sizeListValidator = new SizeListValidator(sizeListStub);

            sizeListValidator.UpdateSize(size);
            Assert.IsTrue(invoked);
        }