public void DeleteToggleAsync_Ok()
        {
            var toggle1 = ToggleFakeData.GetToggleDto1();

            var mock = new Mock <IToggleBusinessManager>();

            mock.Setup(toggleBusinessManager => toggleBusinessManager.DeleteToggle(toggle1.Id));

            using (var controller = new ToggleController(mock.Object))
            {
                var responseActionResult = controller.DeleteToggle(toggle1.Id) as OkResult;
                Assert.IsNotNull(responseActionResult);
            }
        }
        public async Task PostToggleAsync_WithoutToggleDtoId()
        {
            var toggle = ToggleFakeData.GetToggleDto1();

            toggle.Id = string.Empty;
            var unitoOfWorkMock = new Mock <IUnitOfWork <DbContext> >();
            var repositoryMock  = new Mock <IRepository <Toggle> >();

            var repositoryFactoryMock = new Mock <IRepositoryFactory>();

            repositoryFactoryMock.Setup(r => r.CreateRepository <Toggle>(unitoOfWorkMock.Object)).Returns(repositoryMock.Object);

            var manager = new ToggleBusinessManager(unitoOfWorkMock.Object, repositoryFactoryMock.Object);
            await manager.PostToggleAsync(toggle);
        }
        public async Task GetToggledAsync_Ok()
        {
            var toggle1 = ToggleFakeData.GetToggleDto1();

            var mock = new Mock <IToggleBusinessManager>();

            mock.Setup(toggleBusinessManager => toggleBusinessManager.GetToggleAsync(toggle1.Id)).Returns(Task.FromResult(ToggleFakeData.GetResponseWithToggleDto1()));

            using (var controller = new ToggleController(mock.Object))
            {
                var responseActionResult = (await controller.GetToggleAsync(toggle1.Id)) as OkNegotiatedContentResult <Response <ToggleDto> >;
                Assert.IsNotNull(responseActionResult);
                Assert.IsNotNull(responseActionResult.Content);
                Assert.IsNotNull(responseActionResult.Content.Result);
                Assert.IsNotNull(responseActionResult.Content.Result.Id);
                Assert.IsNotNull(responseActionResult.Content.Result.Name);

                Assert.AreEqual(toggle1.Id, responseActionResult.Content.Result.Id);
                Assert.AreEqual(toggle1.Name, responseActionResult.Content.Result.Name);
                Assert.AreEqual(toggle1.Version, responseActionResult.Content.Result.Version);
                Assert.AreEqual(toggle1.Applications.Count(), responseActionResult.Content.Result.Applications.Count());
            }
        }