Exemplo n.º 1
0
        public void TodoList_Add_two_items_Remove_two_items()
        {
            var list    = new TodoItemSortedList();
            var todoOne = new TodoItem("Test 1");
            var todoTwo = new TodoItem("Test 2");

            list.Add(todoOne);
            list.Add(todoTwo);
            list.Remove(todoOne);
            list.Remove(todoTwo);
            Assert.AreEqual(list.Count, 0);
        }
Exemplo n.º 2
0
        public void TodoList_Add_two_items_Move_second_item_before_first()
        {
            var list    = new TodoItemSortedList();
            var todoOne = new TodoItem("Test 1");
            var todoTwo = new TodoItem("Test 2");

            list.Add(todoOne);
            list.Add(todoTwo);
            list.Move(todoTwo, todoOne);
            Assert.AreEqual(list.First(), todoTwo);
            Assert.AreEqual(list.Last(), todoOne);
        }
Exemplo n.º 3
0
        public void TodoList_Add_one_item_Count_is_one()
        {
            var list = new TodoItemSortedList();

            list.Add(new TodoItem("Test 1"));
            Assert.AreEqual(list.Count, 1);
        }
Exemplo n.º 4
0
        public void TodoList_Add_one_item_Insert_second_item_before_first()
        {
            var list    = new TodoItemSortedList();
            var todoOne = new TodoItem("Test 1");
            var todoTwo = new TodoItem("Test 2");

            list.Add(todoOne);
            list.Insert(1, todoTwo);
            Assert.AreEqual(list.First(), todoTwo);
            Assert.AreEqual(list.Last(), todoOne);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Load a TodoItemSortedList from a file
        /// </summary>
        /// <param name="list"></param>
        /// <param name="filename"></param>
        public static void LoadFromFile(this TodoItemSortedList list, string filename)
        {
            string json  = File.ReadAllText(filename);
            var    value = Newtonsoft.Json.JsonConvert.DeserializeObject <TodoItemSortedList>(json);

            list.Clear();
            foreach (var item in value)
            {
                list.Add(item);
            }
        }
Exemplo n.º 6
0
        public int Add(AddOptions options)
        {
            TodoItem todoItem = new TodoItem(options.Text);

            _list.Add(todoItem);
            Save();

            _textWriter.Invoke($"Item \"{todoItem.Description}\" added. Item count = {_list.Count}");

            return(0);
        }
Exemplo n.º 7
0
        public void TodoList_Add_ten_items_Move_last_item_to_first_one_step_at_a_time()
        {
            var list = new TodoItemSortedList();

            foreach (var index in Enumerable.Range(1, 10))
            {
                var todoItem = new TodoItem($"Test {index}");
                list.Add(todoItem);
            }

            var itemTen = list.First(item => item.Description == $"Test 10");

            foreach (var index in Enumerable.Range(1, 9).OrderByDescending(i => i))
            {
                var todoItem = list.First(item => item.Description == $"Test {index}");
                list.Move(itemTen, todoItem);
            }

            var itemNine = list.First(item => item.Description == $"Test 9");

            Assert.AreEqual(list.First(), itemTen);
            Assert.AreEqual(list.Last(), itemNine);
        }