public void FromCancelled()
        {
            Mocks.LibraryInstallationState state = GetState();
            var result = LibraryInstallationResult.FromCancelled(state);

            Assert.AreEqual(state, result.InstallationState);
            Assert.AreEqual(0, result.Errors.Count);
            Assert.IsFalse(result.Success);
            Assert.IsTrue(result.Cancelled);
        }
Exemple #2
0
        public async Task IsValidAsync_State_DestinationPath_HasInvalidCharacters()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId      = "filesystem",
                Name            = "http://glyphlist.azurewebsites.net/img/images/Flag.png",
                DestinationPath = "|lib"
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            Assert.IsFalse(result.Success);
            Assert.AreEqual(result.Errors.Count, 1);
            Assert.AreEqual("LIB012", result.Errors.First().Code);
        }
Exemple #3
0
        public async Task IsValidAsync_State_FileSystem_FilesDoNotExist()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId      = "filesystem",
                Name            = "http://glyphlist.azurewebsites.net/img/images/Flag.png",
                DestinationPath = "lib",
                Files           = new[] { "foo.png" }
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            // FileSystemProvider supports renaming, therefore validation does not fail
            Assert.IsTrue(result.Success);
        }
Exemple #4
0
        public async Task IsValidAsync_State_FileSystem_LibraryIdDoesNotExist()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId      = "filesystem",
                Name            = "lib",
                DestinationPath = "lib",
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            Assert.IsFalse(result.Success);
            Assert.AreEqual(result.Errors.Count, 1);
            Assert.AreEqual(result.Errors.First().Code, "LIB002");
        }
        public async Task IsValidAsync_State_HasNoProvider()
        {
            var state = new Mocks.LibraryInstallationState
            {
                Name = "_lib_",
                DestinationPath = "_path_",
                Files = new List<string>() { "a", "b" },
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            Assert.IsFalse(result.Success);
            Assert.AreEqual(result.Errors.Count, 1);
            Assert.AreEqual(result.Errors.First().Code, "LIB007");
        }
        public async Task IsValidAsync_State_FileSystem_LibraryIdHasInvalidPathCharacters()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId = "filesystem",
                Name = "|lib_",
                DestinationPath = "_path_",
                Files = new List<string>() { "a", "b" },
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            Assert.IsFalse(result.Success);
            Assert.AreEqual(result.Errors.Count, 1);
            Assert.AreEqual(result.Errors.First().Code, "LIB002");
        }
        public void FromInterface()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId = "_prov_",
                Name = "_lib_",
                DestinationPath = "_path_",
                Files = new List<string>() { "a", "b" },
            };

            var lis = LibraryInstallationState.FromInterface(state);
            Assert.AreEqual(state.ProviderId, lis.ProviderId);
            Assert.AreEqual(state.Name, lis.Name);
            Assert.AreEqual(state.Version, lis.Version);
            Assert.AreEqual(state.DestinationPath, lis.DestinationPath);
            Assert.AreEqual(state.Files, lis.Files);
        }
        public async Task IsValidAsync_State_HasUnknownLibraryFile()
        {
            var state = new Mocks.LibraryInstallationState
            {
                ProviderId = "unpkg",
                Name = "jquery",
                Version = "3.3.1",
                DestinationPath = "_path_",
                Files = new List<string>() { "a", "b" },
            };

            ILibraryOperationResult result = await state.IsValidAsync(_dependencies);

            // IsValidAsync does not validate library files
            // Issue https://github.com/aspnet/LibraryManager/issues/254 should fix that
            Assert.IsTrue(result.Success);
        }
        public void Constructor()
        {
            Mocks.LibraryInstallationState state = GetState();

            var ctor1 = new LibraryInstallationResult(state);

            Assert.AreEqual(state, ctor1.InstallationState);
            Assert.AreEqual(0, ctor1.Errors.Count);
            Assert.IsTrue(ctor1.Success);
            Assert.IsFalse(ctor1.Cancelled);

            var ctor2 = new LibraryInstallationResult(state, PredefinedErrors.ManifestMalformed());

            Assert.AreEqual(state, ctor2.InstallationState);
            Assert.AreEqual(1, ctor2.Errors.Count);
            Assert.IsFalse(ctor2.Success);
            Assert.IsFalse(ctor2.Cancelled);
        }