public async Task <RdapAnalysisResult> Get(string type, string address) { this.ValidateAddressInput(address); if (string.IsNullOrEmpty(type)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } IDataClient client; switch (type.ToLower()) { case "ip": client = new RdapClient <OpenRdapIpAddressJsonDataProvider>(); break; case "domain": default: client = new RdapClient <OpenRdapDomainJsonDataProvider>(); break; } string data = await client.GetDataAsync(address); bool isSuccessful = !string.IsNullOrWhiteSpace(data); return(new RdapAnalysisResult { IsSuccessful = isSuccessful, ResultText = data }); }
public async Task RdapClientReturnsEmptyStringWhenDomainIsPresentedToIpAddressProvider() { RdapClient <OpenRdapIpAddressJsonDataProvider> client = new RdapClient <OpenRdapIpAddressJsonDataProvider>(); string data = await client.GetDataAsync("google.com"); Assert.True(data.Contains(Constants.ERROR_PREFIX)); }
public async Task RdapClientReturnsJsonForAnIpAddressWhenIpAddressProviderIsSelected() { RdapClient <OpenRdapIpAddressJsonDataProvider> client = new RdapClient <OpenRdapIpAddressJsonDataProvider>(); string data = await client.GetDataAsync("8.8.8.8"); Assert.False(string.IsNullOrWhiteSpace(data)); try { _ = JsonConvert.DeserializeObject(data); } catch (Exception ex) { Assert.Fail(ex.Message); return; } Assert.Pass(); }