public void todos_misspelled_2()
        {
            var input    = "todo: aaa\nbbb";
            var actual   = new RemoveTodo().Transform(input);
            var expected = input;

            Assert.AreEqual(expected, actual);
        }
        public void no_todos()
        {
            var input    = "aaa\nbbb";
            var actual   = new RemoveTodo().Transform(input);
            var expected = "aaa\nbbb";

            Assert.AreEqual(expected, actual);
        }
        public void one_todos_with_spaces()
        {
            var input    = "   \t  //    todo:    \t aaa\nbbb";
            var actual   = new RemoveTodo().Transform(input);
            var expected = "bbb";

            Assert.AreEqual(expected, actual);
        }
        public void only_todos()
        {
            var input    = "// todo: aaa\n// todo: bbb\n   \t  //  \t  todo: \t ccc\n// todo: ddd\n";
            var actual   = new RemoveTodo().Transform(input);
            var expected = "";

            Assert.AreEqual(expected, actual);
        }
        public void multiple_todos()
        {
            var input    = "// todo: aaa\nbbb\n// todo: ccc\nddd";
            var actual   = new RemoveTodo().Transform(input);
            var expected = "bbb\nddd";

            Assert.AreEqual(expected, actual);
        }
        public void one_todos_breif()
        {
            var input    = "//todo:aaa\nbbb";
            var actual   = new RemoveTodo().Transform(input);
            var expected = "bbb";

            Assert.AreEqual(expected, actual);
        }
Exemple #7
0
        public IEnumerable <TodoItem> Remove(TodoItem todoItem)
        {
            var command = new RemoveTodo {
                Input = todoItem, Persistor = this.Persistor
            };

            command.Execute();

            ViewModel.TodoItems = command.Value.ToList();

            return(command.Value);
        }
Exemple #8
0
 public static TodoState OnRemoveTodo(TodoState state, RemoveTodo action)
 => new TodoState(state.Todos.Where(x => x.Id != action.Todo.Id).ToList());
        /// <summary>
        /// Reducer function to handle RemoveTodo action.
        /// </summary>
        /// <param name="previousState"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public IReadOnlyDictionary <int, TodoItem> Apply(IReadOnlyDictionary <int, TodoItem> previousState, RemoveTodo action)
        {
            var newState = previousState.ToDictionary(kvp => kvp.Key, kvp => kvp.Value);

            if (newState.ContainsKey(action.Id))
            {
                newState.Remove(action.Id);
            }
            return(new ReadOnlyDictionary <int, TodoItem>(newState));
        }
        public IEnumerable<TodoItem> Remove(TodoItem todoItem)
        {
            var command = new RemoveTodo { Input = todoItem, Persistor = this.Persistor };
            command.Execute();

            ViewModel.TodoItems = command.Value.ToList();

            return command.Value;
        }