public SaveRepositoryConfiguration ( string repositoryName, string repositoryUrl ) : IServiceResult | ||
repositoryName | string | |
repositoryUrl | string | |
Результат | IServiceResult |
public void Save_RepositoryExists_SaveSucceeds_SuccessResultIsReturned() { // Arrange string repositoryName = "Nuget Gallery"; string repositoryUrl = "http://www.nuget.org/api/v2"; var applicationInformation = new ApplicationInformation { ConfigurationFileFolder = Environment.CurrentDirectory }; var sourceRepositoryConfigurationFactory = new Mock<ISourceRepositoryConfigurationFactory>(); var filesystemPersistence = new Mock<IFilesystemPersistence<SourceRepositoryConfiguration[]>>(); sourceRepositoryConfigurationFactory.Setup(s => s.GetSourceRepositoryConfiguration(repositoryName, repositoryUrl)).Returns( new SourceRepositoryConfiguration { Name = repositoryName, Url = new Uri(repositoryUrl) }); var reposotories = new[] { new SourceRepositoryConfiguration { Name = "Nuget Gallery", Url = new Uri("http://www.nuget.org/api/v2") } }; filesystemPersistence.Setup(f => f.Load(It.IsAny<string>())).Returns(reposotories); filesystemPersistence.Setup(f => f.Save(It.IsAny<SourceRepositoryConfiguration[]>(), It.IsAny<string>())).Returns(true); var configFileSourceRepositoryProvider = new ConfigFileSourceRepositoryProvider( applicationInformation, sourceRepositoryConfigurationFactory.Object, filesystemPersistence.Object); // Act var result = configFileSourceRepositoryProvider.SaveRepositoryConfiguration(repositoryName, repositoryUrl); // Assert Assert.AreEqual(ServiceResultType.Success, result.Status); }
public void Save_RepositoryObjectCannotBeCreated_FailureResultIsReturned() { // Arrange string repositoryName = "does not matter here"; string repositoryUrl = "does not matter either"; var applicationInformation = new ApplicationInformation { ConfigurationFileFolder = Environment.CurrentDirectory }; var sourceRepositoryConfigurationFactory = new Mock<ISourceRepositoryConfigurationFactory>(); var filesystemPersistence = new Mock<IFilesystemPersistence<SourceRepositoryConfiguration[]>>(); SourceRepositoryConfiguration repositoryConfiguration = null; sourceRepositoryConfigurationFactory.Setup(s => s.GetSourceRepositoryConfiguration(repositoryName, repositoryUrl)).Returns(repositoryConfiguration); var configFileSourceRepositoryProvider = new ConfigFileSourceRepositoryProvider( applicationInformation, sourceRepositoryConfigurationFactory.Object, filesystemPersistence.Object); // Act var result = configFileSourceRepositoryProvider.SaveRepositoryConfiguration(repositoryName, repositoryUrl); // Assert Assert.AreEqual(ServiceResultType.Failure, result.Status); }
public void Save_RepositoryExists_OneRepositoryIsSaved() { // Arrange string repositoryName = "Nuget Gallery"; string repositoryUrl = "http://www.nuget.org/api/v2"; var applicationInformation = new ApplicationInformation { ConfigurationFileFolder = Environment.CurrentDirectory }; var sourceRepositoryConfigurationFactory = new Mock<ISourceRepositoryConfigurationFactory>(); var filesystemPersistence = new Mock<IFilesystemPersistence<SourceRepositoryConfiguration[]>>(); sourceRepositoryConfigurationFactory.Setup(s => s.GetSourceRepositoryConfiguration(repositoryName, repositoryUrl)).Returns( new SourceRepositoryConfiguration { Name = repositoryName, Url = new Uri(repositoryUrl) }); var reposotories = new[] { new SourceRepositoryConfiguration { Name = repositoryName, Url = new Uri("http://www.nuget.org/api/v3") } }; filesystemPersistence.Setup(f => f.Load(It.IsAny<string>())).Returns(reposotories); filesystemPersistence.Setup(f => f.Save(It.IsAny<SourceRepositoryConfiguration[]>(), It.IsAny<string>())).Returns(true); var configFileSourceRepositoryProvider = new ConfigFileSourceRepositoryProvider( applicationInformation, sourceRepositoryConfigurationFactory.Object, filesystemPersistence.Object); // Act configFileSourceRepositoryProvider.SaveRepositoryConfiguration(repositoryName, repositoryUrl); // Assert filesystemPersistence.Verify( f => f.Save(It.Is<SourceRepositoryConfiguration[]>(configurations => configurations.Length == 1), It.IsAny<string>()), Times.Once()); }