Esempio n. 1
0
        public void TestFailedPurchase()
        {
            var    expectedResponse      = @"{
              ""error-code"": ""401"",
              ""error-code-label"": ""authentifcation failed""
            }";
            var    expectedUri           = $"{RestUrl}/number/buy";
            string expectdRequestContent = $"country=GB&msisdn=447700900000&api_key={ApiKey}&api_secret={ApiSecret}&";

            Setup(expectedUri, expectedResponse, expectdRequestContent);
            var request = new NumberTransactionRequest {
                Country = "GB", Msisdn = "447700900000"
            };
            var creds  = Request.Credentials.FromApiKeyAndSecret(ApiKey, ApiSecret);
            var client = new NexmoClient(creds);

            try
            {
                client.NumbersClient.BuyANumber(request);
                Assert.True(false, "Failin because exception was not thrown");
            }
            catch (NexmoNumberResponseException ex)
            {
                Assert.Equal("401", ex.Response.ErrorCode);
                Assert.Equal("authentifcation failed", ex.Response.ErrorCodeLabel);
            }
        }
        public void Execute()
        {
            var VONAGE_API_KEY    = Environment.GetEnvironmentVariable("VONAGE_API_KEY") ?? "VONAGE_API_KEY";
            var VONAGE_API_SECRET = Environment.GetEnvironmentVariable("VONAGE_API_SECRET") ?? "VONAGE_API_SECRET";
            var COUNTRY_CODE      = Environment.GetEnvironmentVariable("COUNTRY_CODE") ?? "COUNTRY_CODE";
            var VONAGE_NUMBER     = Environment.GetEnvironmentVariable("VONAGE_NUMBER") ?? "VONAGE_NUMBER";

            var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
            var client      = new VonageClient(credentials);

            var request = new NumberTransactionRequest()
            {
                Country = COUNTRY_CODE, Msisdn = VONAGE_NUMBER
            };
            var response = client.NumbersClient.CancelANumber(request);

            Console.WriteLine($"Response Error Code: {response.ErrorCode} and Error Code Label: {response.ErrorCodeLabel}");
        }
Esempio n. 3
0
        public void TestBuyNumber(bool passCreds, bool kitchenSink)
        {
            var    expectedResponse      = @"{
              ""error-code"": ""200"",
              ""error-code-label"": ""success""
            }";
            var    expectedUri           = $"{RestUrl}/number/buy";
            string expectdRequestContent = $"country=GB&msisdn=447700900000&api_key={ApiKey}&api_secret={ApiSecret}&";
            NumberTransactionRequest request;

            if (kitchenSink)
            {
                expectdRequestContent = $"country=GB&msisdn=447700900000&target_api_key=12345&api_key={ApiKey}&api_secret={ApiSecret}&";
                request = new NumberTransactionRequest {
                    Country = "GB", Msisdn = "447700900000", TargetApiKey = "12345"
                };
            }
            else
            {
                expectdRequestContent = $"country=GB&msisdn=447700900000&api_key={ApiKey}&api_secret={ApiSecret}&";
                request = new NumberTransactionRequest {
                    Country = "GB", Msisdn = "447700900000"
                };
            }

            Setup(expectedUri, expectedResponse, expectdRequestContent);

            var creds  = Request.Credentials.FromApiKeyAndSecret(ApiKey, ApiSecret);
            var client = new NexmoClient(creds);
            NumberTransactionResponse response;

            if (passCreds)
            {
                response = client.NumbersClient.BuyANumber(request, creds);
            }
            else
            {
                response = client.NumbersClient.BuyANumber(request);
            }

            Assert.Equal("200", response.ErrorCode);
            Assert.Equal("success", response.ErrorCodeLabel);
        }