Exemplo n.º 1
0
        public void EnsureGetProductThrowsExceptionForNullProductId()
        {
            string       nullId = null;
            IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.single_product));

            client.GetProductAsync(nullId).Wait();
        }
Exemplo n.º 2
0
        public async Task EnsureInvalidContentTypeRaisesResponseWithApiCallFailedException()
        {
            MusicClient        client   = new MusicClient("badkey", "us", new MockApiRequestHandler(FakeResponse.Success(Resources.single_product, null)));
            Response <Product> response = await client.GetProductAsync("test");

            Assert.IsNotNull(response.Error, "Expected an Error");
            Assert.AreEqual(typeof(ApiCallFailedException), response.Error.GetType(), "Expected an ApiCallFailedException");
        }
Exemplo n.º 3
0
        public async Task EnsureInvalidApiCredentialsExceptionThrownWhenServerGives403ForItemMethods2()
        {
            MusicClient        client   = new MusicClient("badkey", "us", new MockApiRequestHandler(FakeResponse.Forbidden()));
            Response <Product> response = await client.GetProductAsync("test");

            Assert.IsNotNull(response.Error, "Expected an Error");
            Assert.AreEqual(typeof(InvalidApiCredentialsException), response.Error.GetType(), "Expected an InvalidApiCredentialsException");
        }
 public void EnsureAsyncGetProductsReturnsItems()
 {
     // Only test happy path, as the MusicClient tests cover the unhappy path
     IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.single_product));
     var task = client.GetProductAsync("test");
     task.Wait();
     this.ValidateProductResponse(task.Result);
 }
 public async Task EnsureGetProductReturnsUnknownErrorForFailedCall()
 {
     IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(FakeResponse.ConflictServerError("{ \"error\":\"true\"}")));
     Response<Product> result = await client.GetProductAsync("test");
     Assert.IsNotNull(result, "Expected a result");
     Assert.IsNotNull(result.StatusCode, "Expected a status code");
     Assert.IsTrue(result.StatusCode.HasValue, "Expected a status code");
     Assert.AreNotEqual(HttpStatusCode.OK, result.StatusCode.Value, "Expected a non-OK response");
     Assert.IsNotNull(result.Error, "Expected an error");
     Assert.AreEqual(typeof(ApiCallFailedException), result.Error.GetType(), "Expected an ApiCallFailedException");
 }
Exemplo n.º 6
0
        public async Task EnsureGetProductReturnsUnknownErrorForFailedCall()
        {
            IMusicClient       client = new MusicClient("test", "gb", new MockApiRequestHandler(FakeResponse.ConflictServerError("{ \"error\":\"true\"}")));
            Response <Product> result = await client.GetProductAsync("test");

            Assert.IsNotNull(result, "Expected a result");
            Assert.IsNotNull(result.StatusCode, "Expected a status code");
            Assert.IsTrue(result.StatusCode.HasValue, "Expected a status code");
            Assert.AreNotEqual(HttpStatusCode.OK, result.StatusCode.Value, "Expected a non-OK response");
            Assert.IsNotNull(result.Error, "Expected an error");
            Assert.AreEqual(typeof(ApiCallFailedException), result.Error.GetType(), "Expected an ApiCallFailedException");
        }
Exemplo n.º 7
0
        public async Task EnsureApiNotAvailableExceptionThrownWhenRegionInfoCtorUsedAndCountryIsInvalidForItemMethods()
        {
            // First test the public constructor...
            MusicClient publicClient = new MusicClient("test");

            // Now test the handling of non-availability...

            // Our REST API will give a 404 response when the country code is not valid, so this test
            // ensures that gets translated into an ApiNotAvailableException when the RegionInfo constructor is used.
            MusicClient        client   = new MusicClient("test", new MockApiRequestHandler(FakeResponse.NotFound()));
            Response <Product> response = await client.GetProductAsync("test");

            Assert.IsNotNull(response.Error, "Expected an Error");
            Assert.AreEqual(typeof(ApiNotAvailableException), response.Error.GetType(), "Expected an ApiNotAvailableException");
        }
 public async Task EnsureGetProductReturnsItems()
 {
     IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.single_product));
     this.ValidateProductResponse(await client.GetProductAsync("test"));
 }
 public void EnsureGetProductThrowsExceptionForNullProductId()
 {
     string nullId = null;
     IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.single_product));
     client.GetProductAsync(nullId).Wait();
 }
Exemplo n.º 10
0
        public async Task EnsureGetProductReturnsItems()
        {
            IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.single_product));

            this.ValidateProductResponse(await client.GetProductAsync("test"));
        }
 public async Task EnsureInvalidApiCredentialsExceptionThrownWhenServerGives403ForItemMethods()
 {
     MusicClient client = new MusicClient("badkey", "us", new MockApiRequestHandler(FakeResponse.Forbidden()));
     Response<Product> response = await client.GetProductAsync("test");
     Assert.IsNotNull(response.Error, "Expected an Error");
     Assert.AreEqual(typeof(InvalidApiCredentialsException), response.Error.GetType(), "Expected an InvalidApiCredentialsException");
 }
        public async Task EnsureApiNotAvailableExceptionThrownWhenRegionInfoCtorUsedAndCountryIsInvalidForItemMethods()
        {
            // First test the public constructor...
            MusicClient publicClient = new MusicClient("test");

            // Now test the handling of non-availability...

            // Our REST API will give a 404 response when the country code is not valid, so this test
            // ensures that gets translated into an ApiNotAvailableException when the RegionInfo constructor is used.
            MusicClient client = new MusicClient("test", new MockApiRequestHandler(FakeResponse.NotFound()));
            Response<Product> response = await client.GetProductAsync("test");
            Assert.IsNotNull(response.Error, "Expected an Error");
            Assert.AreEqual(typeof(ApiNotAvailableException), response.Error.GetType(), "Expected an ApiNotAvailableException");
        }
Exemplo n.º 13
0
 public async Task EnsureInvalidContentTypeRaisesResponseWithApiCallFailedException()
 {
     MusicClient client = new MusicClient("badkey", "us", new MockApiRequestHandler(FakeResponse.Success(Resources.single_product, null)));
     Response<Product> response = await client.GetProductAsync("test");
     Assert.IsNotNull(response.Error, "Expected an Error");
     Assert.AreEqual(typeof(ApiCallFailedException), response.Error.GetType(), "Expected an ApiCallFailedException");
 }