public async Task <HttpResponseMessage> GetContract(string providerName, string consumerName, HttpClient client) { var response = await client.GetAsync($"/pacts/provider/{providerName}/consumer/{consumerName}/latest"); if (!response.IsSuccessStatusCode) { return(response); } var content = await response.Content.ReadAsStringAsync(); PactContract = JsonConvert.DeserializeObject <PactContract>(content); PactJson = content; return(response); }
public ProviderState(string providerName, string consumerName, string localDirectory) { _config = EnvironmentsConfig.ReadConfigurationFile(); var client = new RestClient(_config.PactBroker.Host) { Authenticator = new HttpBasicAuthenticator(_config.PactBroker.Username, _config.PactBroker.Password) }; var request = new RestRequest($"/pacts/provider/{providerName}/consumer/{consumerName}/latest", Method.GET); var response = client.Execute(request); PactContract = JsonConvert.DeserializeObject <PactContract>(response.Content); _pactJson = JObject.Parse(response.Content); _localDirectory = localDirectory; }
public void Given_Broker_Returns_Pact_Contract__When_Get_ProviderState_Index__Then_Index_Returned() { const string providerStateName = "Test State"; var pactContract = new PactContract { Interactions = new List <ProviderServiceInteraction> { new ProviderServiceInteraction { ProviderState = providerStateName } } }; using (var client = new HttpClient()) { var providerState = new Mock <ProviderState>(client, configPath); providerState.Setup(x => x.PactContract).Returns(pactContract); providerState.Setup(x => x.PactJson).Returns(""); var index = providerState.Object.GetIndex(providerStateName); Assert.AreEqual(0, index); } }