public void LinkIsNotDecodedWhenKeyIsNotSupplied() { // Arrange var request = string.Empty; var linkController = new LinkControllerSetup(); linkController.Mock_DataService.LinkedResource.Get(Arg.Any <long>()).Returns(x => null); // Act var actualResult = linkController.Scope.RetrieveLink(request); // Assert var actual = AssertBadRequestResult(actualResult); Assert.AreEqual(1, actual.Errors.Count); Assert.AreEqual(ErrorCode.INVALID_LINK, actual.Errors.First().ErrorCode); linkController.Mock_DataService.LinkedResource.Received(1).Get(Arg.Is <long>(x => x == 0)); }
public void NewLinkIsCreatedWhenLinkDoesNotExist() { // Arrange var expected = new LinkedResourceDto { Id = 1, Url = "http://some.site" }; var expectedKey = "MQ"; var expectedEncodedUrl = $"http://lync.ninja/{expectedKey}"; var request = new CreateLinkRequest { Url = expected.Url }; var encodedUrlBase = "http://lync.ninja/"; var linkController = new LinkControllerSetup(); linkController.Mock_AppSettings.Value.Returns(new AppSettings { EncodedUrlBase = encodedUrlBase }); linkController.Mock_DataService.LinkedResource.Get(Arg.Any <string>()).Returns(x => null); linkController.Mock_DataService.LinkedResource.Save(Arg.Any <LinkedResourceDto>()).Returns(expected); // Act var actualResult = linkController.Scope.CreateLink(request); // Assert var actual = AssertOkResult(actualResult); Assert.AreEqual(expected.Url, actual.Url); Assert.AreEqual(expected.Id, actual.Id); Assert.AreEqual(expectedKey, actual.Key); Assert.AreEqual(expectedEncodedUrl, actual.EncodedUrl); var decodedKey = Base64.Decode(expected.Key); Assert.AreEqual(expected.Id.ToString(), decodedKey); linkController.Mock_DataService.LinkedResource.Received(1).Get(Arg.Any <string>()); linkController.Mock_DataService.LinkedResource.Received(1).Save(Arg.Any <LinkedResourceDto>()); }
public void LinkIsDecoded() { // Arrange var expected = new LinkedResourceDto { Id = 1, Url = "http://some.site" }; var request = "MQ"; var linkController = new LinkControllerSetup(); linkController.Mock_DataService.LinkedResource.Get(Arg.Any <long>()).Returns(expected); // Act var actualResult = linkController.Scope.RetrieveLink(request); // Assert var actual = AssertOkResult(actualResult); Assert.AreEqual(expected.Url, actual.Url); linkController.Mock_DataService.LinkedResource.Received(1).Get(Arg.Is <long>(x => x == expected.Id)); }