Exemple #1
0
        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));
        }
Exemple #2
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>());
        }
Exemple #3
0
        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));
        }