public void ItHandlesGetAllInstruments() { // Arange var instruments = IranianMusicIstrumentsRepository.GetAllFormal(); //Mocking ProviderService //1-Provider State //2-Description for Specified Provider State //3-Specifing the Request //4-The Desired Response for Specified Request _mockProviderService .Given("Get All Instruments") .UponReceiving("A valid GET request for all Instruments with successfully response") .With(new ProviderServiceRequest { Method = HttpVerb.Get, Path = "/api/Instrument" }) .WillRespondWith(new ProviderServiceResponse { Status = 200, Headers = new Dictionary <string, object> { { "Content-Type", "application/json; charset=utf-8" } }, Body = new { message = "", result = "Suucess", data = instruments } }); // Act var result = HttpUtility.GetAllInstruments(_baseUri) .GetAwaiter() .GetResult(); var resultBodyText = result.Content.ReadAsStringAsync() .GetAwaiter() .GetResult(); var deserializeObject = JsonConvert.DeserializeObject <ResponseVM>(resultBodyText); // Assert Assert.Equal(instruments.Count, deserializeObject.data.Count); //Very simple assertion to assert if response message contains expected result. }