public void get_Todo_should_call_GetTodoItem_from_dataAccess_with_correct_params() { var mockTodoItemsDataAccess = MockRepository.Create <IListDataAccess>(); mockTodoItemsDataAccess.SetupAllProperties(); var mockDocumentSession = MockRepository.Create <IDocumentSession>(); mockDocumentSession.SetupAllProperties(); var todoGetReqeust = new TodoGetRequest { Id = "item1" }; var endpoint = new TodoItemEndpoint(mockTodoItemsDataAccess.Object, mockDocumentSession.Object); endpoint.get_Todo(todoGetReqeust); mockTodoItemsDataAccess.Verify( todoItemDataAccess => todoItemDataAccess.GetItem(todoGetReqeust.Id)); }
public ResponseResult <TodoViewModel> GetTodo([FromBody] TodoGetRequest model) { try { //换取OpenId var result = getOpenId(model); if (result.ErrCode != 0) { logger.Error(result.ErrMsg); return(new ResponseResult <TodoViewModel>() { ErrCode = 1002, ErrMsg = result.ErrMsg, Data = null }); } //通过OpenId获取UserId Guid userId = getUserId(result.Data); //权限判定 if (!hasAuthority(userId, model.TodoId)) { return(new ResponseResult <TodoViewModel>() { ErrCode = 1004, ErrMsg = "没有权限获取该Todo", Data = null }); } //查询Todo var todo = (from t in _todoContext.Todos where t.TodoId == model.TodoId select t).FirstOrDefault(); if (todo == null) { return(new ResponseResult <TodoViewModel>() { ErrCode = 1005, ErrMsg = "Todo不存在", Data = null }); } return(new ResponseResult <TodoViewModel>() { ErrCode = 0, ErrMsg = "success", Data = new TodoViewModel() { TodoId = todo.TodoId, AlertBeforeMinutes = todo.AlertBeforeMinutes, AlertTime = todo.AlertTime, Content = todo.Content, CreateTime = todo.CreateTime, Title = todo.Title, UpdateTime = todo.UpdateTime, UseAlert = todo.UseAlert } }); } catch (Exception ex) { logger.Error(ex); return(new ResponseResult <TodoViewModel>() { ErrCode = 1001, ErrMsg = ex.Message, Data = null }); } }