Ejemplo n.º 1
0
        public void When_an_item_is_add_todolist_should_reflect_auto()
        {
            var manager = new TodoListManager(notificationManager: null, apiManager: null);

            var todoList = new TodoList("A todo list")
            {
                Items = new List <TodoItem>
                {
                    new TodoItem
                    {
                        Name        = "Item 1",
                        Id          = Guid.NewGuid(),
                        IsCompleted = false
                    },
                    new TodoItem
                    {
                        Name        = "Item 2",
                        Id          = Guid.NewGuid(),
                        IsCompleted = false
                    },
                    new TodoItem
                    {
                        Name        = "Item 3",
                        Id          = Guid.NewGuid(),
                        IsCompleted = false
                    }
                }
            };

            // Act
            manager.AddItem("Item 4", todoList);

            // Assert
            todoList.Items.Should().ContainSingle(x => x.Name == "Item 4");
        }
        public void When_a_new_item_is_added_todo_list_should_contain_item_of_name()
        {
            var manager  = new TodoListManager(notificationManager: null, apiManager: null);
            var todoList = new TodoList("current title");

            // Act
            manager.AddItem("some name", todoList);

            // Assert
            Assert.Contains(todoList.Items, item => item.Name == "some name");
        }
Ejemplo n.º 3
0
        public async Task When_completing_an_item_send_notification_async()
        {
            var autoFixture         = new Fixture();
            var notificationManager = Substitute.For <INotificationManager>();
            var apiManager          = Substitute.For <IRemoteApiManager>();
            var todoList            = autoFixture.Create <TodoList>();

            var name = autoFixture.Create <string>();

            var manager = new TodoListManager(notificationManager, apiManager);
            var id      = manager.AddItem(name, todoList);

            // Act
            await manager.CompleteItemAsync(id, todoList);

            // Assert
            await notificationManager.Received().NotifyOfCompletedTaskAsync(name);
        }