public void EditComandTest()
        {
            //Mockで差し替えるTodoItemList
            var items = new List <TodoItem>()
            {
                new TodoItem {
                    ID = 5, Name = "MockObject", Notes = "Use for GetTasks Return", Done = false
                }
            };

            //ITodoItemServiceのMockを作成
            var todoService = new Mock <ITodoItemService>();

            //GetTasks()が呼ばれたとき、itemsを返す設定
            todoService.Setup(p => p.GetTasks()).Returns(items);

            var vm = new TodoItemListViewModel(todoService.Object);

            //vmのライフサイクルメソッド呼び出し
            vm.Start();
            vm.EditCommand.Execute(items[0]);

            //画面遷移リクエスト数が1件であること
            Assert.AreEqual(1, base.MockDispatcher.Requests.Count);

            //画面遷移リクエストパラメータが正しい事
            Assert.AreEqual(items[0].ID.ToString(), base.MockDispatcher.Requests[0].ParameterValues["ID"]);
            Assert.AreEqual(items[0].Name, base.MockDispatcher.Requests[0].ParameterValues["Name"]);
            Assert.AreEqual(items[0].Notes, base.MockDispatcher.Requests[0].ParameterValues["Notes"]);
            Assert.AreEqual(items[0].Done.ToString(), base.MockDispatcher.Requests[0].ParameterValues["Done"]);
        }
        public void TodoItemListViewModelNavigationTest()
        {
            var todoService = new Mock <ITodoItemService>();
            var vm          = new TodoItemListViewModel(todoService.Object);

            vm.AddCommand.Execute();
            Assert.AreEqual(1, base.MockDispatcher.Requests.Count);
            Assert.AreEqual(typeof(TodoItemDetailViewModel), base.MockDispatcher.Requests[0].ViewModelType);
        }
Пример #3
0
        public MainPage()
        {
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);

            var todoItemsViewModel = new TodoItemListViewModel(DependencyService.Get <ITodoItemsLoader>());

            this.BindingContext = todoItemsViewModel;

            todoItemsViewModel.Init();
        }
        public IActionResult GetTodoItemByID([FromRoute] int id)
        {
            var todoItem = _context.TodoItems.FirstOrDefault(i => i.ID == id);

            if (todoItem == null)
            {
                return(NotFound());
            }
            var todoList = _context.TodoLists.FirstOrDefault(l => l.ID == todoItem.TodoListID);
            TodoItemListViewModel todoItemView = new TodoItemListViewModel();

            todoItemView.TodoItem = todoItem;
            todoList.TodoItems    = _context.TodoItems.Where(i => i.TodoListID == todoItem.TodoListID).ToList();
            todoItemView.TodoList = todoList;

            return(Ok(todoItemView));
        }
Пример #5
0
 public TodoItemsListPage()
 {
     InitializeComponent();
     BindingContext = new TodoItemListViewModel();
     GetTodoTasks();
 }