public void ThrowsArgumentNullIfUsernameMissing(InvokePackageOwnerModificationRequest request, string username) { // Arrange var controller = GetController <JsonApiController>(); // Act & Assert Assert.ThrowsAsync <ArgumentException>(() => request(controller, "package", username)); }
public async Task ReturnsFailureIfPackageNotFound(InvokePackageOwnerModificationRequest request) { // Arrange var controller = GetController <JsonApiController>(); // Act var result = await request(controller, "package", "user"); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal("Package not found.", data.message); }
public async Task ReturnsFailureIfCurrentUserNotFound(InvokePackageOwnerModificationRequest request, Func <Fakes, User> getCurrentUser, Func <Fakes, User> getUserToAdd) { // Arrange var fakes = Get <Fakes>(); var currentUser = getCurrentUser(fakes); var userToAdd = getUserToAdd(fakes); var controller = GetController <JsonApiController>(); // Act var result = await request(controller, fakes.Package.Id, userToAdd.Username); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal("Current user not found.", data.message); }
public async Task ReturnsFailureIfNewOwnerIsNotRealUser(InvokePackageOwnerModificationRequest request, Func <Fakes, User> getCurrentUser) { // Arrange var fakes = Get <Fakes>(); var currentUser = getCurrentUser(fakes); var controller = GetController <JsonApiController>(); controller.SetCurrentUser(currentUser); // Act var result = await request(controller, fakes.Package.Id, "nonUser"); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal("Owner not found.", data.message); }
public async Task ReturnsFailureIfNewOwnerIsAlreadyOwner(InvokePackageOwnerModificationRequest request, Func <Fakes, User> getCurrentUser, Func <Fakes, User> getUserToAdd) { // Arrange var fakes = Get <Fakes>(); var currentUser = getCurrentUser(fakes); var userToAdd = getUserToAdd(fakes); var controller = GetController <JsonApiController>(); controller.SetCurrentUser(currentUser); // Act var result = await request(controller, fakes.Package.Id, userToAdd.Username); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal(string.Format(Strings.AddOwner_AlreadyOwner, userToAdd.Username), data.message); }
public async Task ReturnsFailureIfNewOwnerIsNotConfirmed(InvokePackageOwnerModificationRequest request, Func <Fakes, User> getCurrentUser) { // Arrange var fakes = Get <Fakes>(); var currentUser = getCurrentUser(fakes); var controller = GetController <JsonApiController>(); controller.SetCurrentUser(currentUser); fakes.User.UnconfirmedEmailAddress = fakes.User.EmailAddress; fakes.User.EmailAddress = null; // Act var result = await request(controller, fakes.Package.Id, fakes.User.Username); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal("Sorry, 'testUser' hasn't verified their email account yet and we cannot proceed with the request.", data.message); }
public async Task ReturnsFailureIfNewOwnerIsAlreadyPending(InvokePackageOwnerModificationRequest request, Func <Fakes, User> getCurrentUser, Func <Fakes, User> getUserToAdd) { // Arrange var fakes = Get <Fakes>(); var currentUser = getCurrentUser(fakes); var userToAdd = getUserToAdd(fakes); var package = fakes.Package; var controller = GetController <JsonApiController>(); controller.SetCurrentUser(currentUser); GetMock <IPackageOwnershipManagementService>() .Setup(x => x.GetPackageOwnershipRequests(package, null, userToAdd)) .Returns(new PackageOwnerRequest[] { new PackageOwnerRequest() }); // Act var result = await request(controller, package.Id, userToAdd.Username); dynamic data = ((JsonResult)result).Data; // Assert Assert.False(data.success); Assert.Equal(string.Format(Strings.AddOwner_AlreadyOwner, userToAdd.Username), data.message); }