public void TaskListsRepositoryRemoveShareCallsDeleteFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.RemoveShare(taskList, user.RowKey); // Assert unitOfWorkMock.Verify(uow => uow.Delete<TaskListShareEntity>("TaskListShares", string.Format("{0}+{1}", TaskList1PartitionKey, _taskList1RowKey), User1RowKey), Times.Once()); }
public void TaskListsRepositoryUpdateCallsUpdateFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.Update(taskList); // Assert unitOfWorkMock.Verify(uow => uow.Update("TaskLists", It.IsAny<TaskListEntity>()), Times.Once()); }
public void TaskListsRepositoryHasPermisionToEditCallsGetFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var taskListShare = new TaskListShareEntity(string.Format("{0}+{1}", TaskList1PartitionKey, _taskList1RowKey), User1RowKey); taskList.Share.Add(user); var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(u => u.Get("TaskListShares", It.IsAny<Expression<Func<TaskListShareEntity, bool>>>())).Returns(taskListShare); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act var result = repository.HasPermissionToEdit(user, taskList); // Assert Assert.IsTrue(result); unitOfWorkMock.Verify(uow => uow.Get("TaskListShares", It.IsAny<Expression<Func<TaskListShareEntity, bool>>>()), Times.Once()); }
public void TaskListsRepositoryLoadCallsLoadFromTheUnitOfWork() { // Arrange var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(u => u.Load<TaskListEntity>(It.Is<string>(s => s == "TaskLists"))).Returns(BuildTaskListsTable()); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act var result = repository.Load().ToList(); // Assert Assert.IsTrue(result.Count() == 2); unitOfWorkMock.Verify(uow => uow.Load<TaskListEntity>("TaskLists"), Times.Once()); }
public void TaskListsRepositoryGetCallsWithFilterGetFromTheUnitOfWorkAndReturnsAExistingTaskList() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(u => u.Get("TaskLists", It.IsAny<Expression<Func<TaskList, bool>>>())).Returns(taskList); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act var result = repository.Get(n => n.PartitionKey == Note1PartitionKey && n.RowKey == _note1RowKey); // Assert Assert.IsNotNull(result); unitOfWorkMock.Verify(uow => uow.Get("TaskLists", It.IsAny<Expression<Func<TaskList, bool>>>()), Times.Once()); }
public void TaskListsRepositoryGetSharedCallsLoadFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskListEntity(TaskList1PartitionKey, _taskList1RowKey); var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(u => u.Load("TaskListShares", It.IsAny<Expression<Func<TaskListShareEntity, bool>>>())).Returns(BuildTaskListSharesTable()); unitOfWorkMock.Setup(u => u.Get("TaskLists", It.IsAny<Expression<Func<TaskListEntity, bool>>>())).Returns(taskList); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act var result = repository.GetShared(user); // Assert Assert.IsTrue(result.Count() == 2); unitOfWorkMock.Verify(uow => uow.Load("TaskListShares", It.IsAny<Expression<Func<TaskListShareEntity, bool>>>()), Times.Once()); unitOfWorkMock.Verify(uow => uow.Get("TaskLists", It.IsAny<Expression<Func<TaskListEntity, bool>>>()), Times.Exactly(2)); }
public void TaskListsRepositoryGetCallsGetFromTheUnitOfWorkAndReturnsNullForANonExistingTaskList() { // Arrange var unitOfWorkMock = new Mock<IUnitOfWork>(); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act var result = repository.Get(TaskList3PartitionKey, _taskList3RowKey); // Assert Assert.IsNull(result); unitOfWorkMock.Verify(uow => uow.Get("TaskLists", It.IsAny<Expression<Func<TaskListEntity, bool>>>()), Times.Once()); }
public void TaskListsRepositoryDeleteCallsDeleteFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(uow => uow.Load("TaskListShares", It.IsAny<Expression<Func<TaskListShareEntity, bool>>>())).Returns(BuildTaskListSharesTable()); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.Delete(taskList); // Assert unitOfWorkMock.Verify(uow => uow.Delete<TaskListEntity>("TaskLists", TaskList1PartitionKey, _taskList1RowKey), Times.Once()); unitOfWorkMock.Verify(uow => uow.Delete<TaskListShareEntity>("TaskListShares", string.Format("{0}+{1}", TaskList1PartitionKey, _taskList1RowKey), User1RowKey), Times.Once()); unitOfWorkMock.Verify(uow => uow.Delete<TaskListShareEntity>("TaskListShares", string.Format("{0}+{1}", TaskList1PartitionKey, _taskList1RowKey), User3RowKey), Times.Once()); }
public void TaskListsRepositoryCreateCallsCreatesFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user); var unitOfWorkMock = new Mock<IUnitOfWork>(); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.Create(taskList); // Assert Assert.IsTrue(taskList.PartitionKey != string.Empty); Assert.IsTrue(taskList.RowKey != string.Empty); unitOfWorkMock.Verify(uow => uow.Create(It.IsAny<TaskListEntity>(), "TaskLists"), Times.Once()); unitOfWorkMock.Verify(uow => uow.Create(It.IsAny<TaskListShareEntity>(), "TaskListShares"), Times.Once()); }
public void TaskListsRepositoryAddShareCallsCreateFromTheUnitOfWork() { // Arrange var user = new User { PartitionKey = User1PartitionKey, RowKey = User1RowKey }; var taskList = new TaskList("Test title", user) { PartitionKey = TaskList1PartitionKey, RowKey = _taskList1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.AddShare(taskList, user.RowKey); // Assert unitOfWorkMock.Verify(uow => uow.Create(It.IsAny<TaskListShareEntity>(), "TaskListShares"), Times.Once()); }
public void TaskListRepositoryLoadContainerCallsGetsFromTheUnitOfWork() { // Arrange var taskList = new TaskListEntity(TaskList1PartitionKey, _taskList1RowKey); var taskListNote = new TaskListEntity { PartitionKey = string.Format("{0}+{1}", TaskList1PartitionKey, _taskList1RowKey), RowKey = string.Format("{0}+{1}", Note1PartitionKey, _note1RowKey) }; var note = new Note { PartitionKey = Note1PartitionKey, RowKey = _note1RowKey }; var unitOfWorkMock = new Mock<IUnitOfWork>(); unitOfWorkMock.Setup(u => u.Get("TaskListNotes", It.IsAny<Expression<Func<TaskListEntity, bool>>>())).Returns(taskListNote); unitOfWorkMock.Setup(u => u.Get("TaskLists", It.IsAny<Expression<Func<TaskListEntity, bool>>>())).Returns(taskList); var repository = new TaskListsRepository(unitOfWorkMock.Object); // Act repository.LoadContainer(note); // Assert Assert.IsNotNull(note.Container); unitOfWorkMock.Verify(uow => uow.Get("TaskListNotes", It.IsAny<Expression<Func<TaskListEntity, bool>>>()), Times.Once()); unitOfWorkMock.Verify(uow => uow.Get("TaskLists", It.IsAny<Expression<Func<TaskListEntity, bool>>>()), Times.Once()); }