public void Constructor_HttpClientFactoryParameterIsNotNull_ClassIsInstantiated() { // Arrange Func<Uri, IHttpClient> httpClientFactoryMock = u => new Mock<IHttpClient>().Object; // Act var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Assert Assert.IsNotNull(packageRepositoryFactory); }
public void CreateRepository_PackageSourceParameterIsARemoteUri_DataServicePackageRepositoryIsReturned() { // Arrange var packageSource = "https://nuget.org/api/v2/"; Func<Uri, IHttpClient> httpClientFactoryMock = u => { return new Mock<IHttpClient>().Object; }; var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Act var result = packageRepositoryFactory.CreateRepository(packageSource); // Assert Assert.IsNotNull(result); Assert.AreEqual(typeof(DataServicePackageRepository), result.GetType()); }
public void CreateRepository_PackageSourceParameterIsARemoteUri_HttpClientFactoryIsCalled() { // Arrange bool httpClientFactoryGotCalled = false; var packageSource = "https://nuget.org/api/v2/"; Func<Uri, IHttpClient> httpClientFactoryMock = u => { httpClientFactoryGotCalled = true; return new Mock<IHttpClient>().Object; }; var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Act packageRepositoryFactory.CreateRepository(packageSource); // Assert Assert.IsTrue(httpClientFactoryGotCalled); }
public void CreateRepository_PackageSourceParameterIsFileUri_LocalPackageRepositoryIsReturned(string packageSource) { // Arrange Func<Uri, IHttpClient> httpClientFactoryMock = u => new Mock<IHttpClient>().Object; var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Act var result = packageRepositoryFactory.CreateRepository(packageSource); // Assert Assert.IsNotNull(result); Assert.AreEqual(typeof(LocalPackageRepository), result.GetType()); }
public void HttpClientFactory_ReturnsTheHttpClientFactorySuppliedInTheConstructor() { // Arrange Func<Uri, IHttpClient> httpClientFactoryMock = u => new Mock<IHttpClient>().Object; var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Act var result = packageRepositoryFactory.HttpClientFactory; // Assert Assert.AreEqual(httpClientFactoryMock, result); }
public void CreateRepository_PackageSourceParameterIsInvalid_ArgumentExceptionIsThrown(string packageSource) { // Arrange Func<Uri, IHttpClient> httpClientFactoryMock = u => new Mock<IHttpClient>().Object; var packageRepositoryFactory = new PackageRepositoryFactory(httpClientFactoryMock); // Act packageRepositoryFactory.CreateRepository(packageSource); }