예제 #1
0
        public void Constructor_HubIsNull_ExpectedResult_NullReferenceException()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                Assert.That(() => _hodoorController = new HodoorController(_stubContext, null),
                            Throws.Exception.TypeOf <NullReferenceException>());
            }
        }
예제 #2
0
        public void Constructor_DefaultItemCreated_ExpectedResult_NotEmpty()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                Assert.That(_stubContext.HodoorItems, Is.Not.Empty);
            }
        }
예제 #3
0
        public void Constructor_TwoControllersCreated_ExpectedResult_CountIs1()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);
                HodoorController hodoorControllerTwo = new HodoorController(_stubContext, _hub);

                Assert.That(_stubContext.HodoorItems.ToList().Count, Is.EqualTo(1));
            }
        }
예제 #4
0
        public void GetAll_ZeroItemsInContext_ExpectedResult_True()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                _hodoorController.Delete(1);

                Assert.That(_hodoorController.GetAll().ToList().Count, Is.EqualTo(_stubContext.HodoorItems.ToList().Count));
            }
        }
예제 #5
0
        public void Create_NullItem_ExpectedResult_NoHubRequestReceived()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                _hodoorController.Create(_stubHodoorItem1);

                _hub.Clients.All.DidNotReceive().InvokeAsync(Arg.Any <string>());
            }
        }
예제 #6
0
        public void Create_HodoorItemNull_ExpectedResult_BadRequestResult()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                var result = _hodoorController.Create(null);

                Assert.IsInstanceOf <BadRequestResult>(result);
            }
        }
예제 #7
0
        public void Next_NoItems_ExpectedResult_NotFound()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();
                _hodoorController = new HodoorController(_stubContext, _hub);

                _hodoorController.Delete(1);

                IActionResult result = _hodoorController.Next();

                Assert.IsInstanceOf <NotFoundResult>(result);
            }
        }
예제 #8
0
        public void GetById_DefaultItem_ExpectedResult_CommandCmdUnlock()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();
                _hodoorController = new HodoorController(_stubContext, _hub);

                const long id = 1;

                var result = _hodoorController.GetById(id) as ObjectResult;
                var model  = result.Value as HodoorItem;

                Assert.That(model.Id, Is.EqualTo(id));
            }
        }
예제 #9
0
        public void Create_HubCreateItem_CorrectStringInputFourthArg_ExpectedResult_True()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                _hodoorController.Create(_stubHodoorItem1);

                _hub.Clients.All.Received(1).InvokeAsync(
                    Arg.Any <string>(),
                    Arg.Any <string>(),
                    Arg.Any <string>(),
                    Arg.Is <HodoorItem>(fourthArg => fourthArg == _stubHodoorItem1));
            }
        }
예제 #10
0
        public void Newest_ThreeItemsInContext_ExpectedResult_LastItemOnly()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();
                _hodoorController = new HodoorController(_stubContext, _hub);
                _hodoorController.Create(_stubHodoorItem1);
                _hodoorController.Create(_stubHodoorItem2);

                var result = _hodoorController.Newest() as ObjectResult;
                Debug.Assert(result != null, nameof(result) + " != null");
                var model = result.Value as HodoorItem;

                Debug.Assert(model != null, nameof(model) + " != null");
                Assert.That(model.Command, Is.EqualTo("When"));
                Assert.That(model.Command, Is.EqualTo("When"));
            }
        }
예제 #11
0
        public void Next_ThreeItemsInContext_ExpectedResult_FirstItemOnly()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                _hodoorController.Create(_stubHodoorItem1);
                _hodoorController.Create(_stubHodoorItem2);

                var result = _hodoorController.Next() as ObjectResult;
                var model  = result.Value as HodoorItem;

                Assert.That(model.Command, Is.EqualTo("CmdUnlock"));
                Assert.That(model.Command, Is.EqualTo("CmdUnlock"));
            }
        }
예제 #12
0
        public void Create_HubCreateItem_CorrectStringInputThirdArg_ExpectedResult_True()
        {
            using (_stubContext = new FwpsDbContext(_options))
            {
                _stubContext.Database.EnsureCreated();

                _hodoorController = new HodoorController(_stubContext, _hub);

                _stubHodoorItem1.Command = "ThirdArg";

                _hodoorController.Create(_stubHodoorItem1);

                _hub.Clients.All.Received(1).InvokeAsync(
                    Arg.Any <string>(),
                    Arg.Any <string>(),
                    Arg.Is <string>(thirdArg => thirdArg == "ThirdArg"),
                    Arg.Any <object>());
            }
        }