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); }
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); }
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); }
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); }