public async Task DeleteEpaRecord_InvalidFamilyName() { // arrange long uln = 1234567890; string lastname = "INVALID"; string standard = "1"; string epaReference = "1234567890"; var expectedResponse = new ApiResponse { StatusCode = (int)HttpStatusCode.BadRequest, Message = "Cannot find apprentice with the specified Uln, FamilyName & Standard" }; _MockHttp.When(HttpMethod.Delete, $"{apiBaseAddress}/api/v1/epa/{uln}/{lastname}/{standard}/{epaReference}") .Respond(HttpStatusCode.BadRequest, "application/json", JsonConvert.SerializeObject(expectedResponse)); // act var request = new DeleteEpaRequest { Uln = uln, FamilyName = lastname, Standard = standard, EpaReference = epaReference }; var actual = await _ApiClient.DeleteEpaRecord(request); // assert Assert.That(actual.Error, Is.Not.Null); Assert.That(actual.Error.StatusCode, Is.EqualTo(expectedResponse.StatusCode)); Assert.That(actual.Error.Message, Is.EqualTo(expectedResponse.Message)); }
public async Task DeleteEpaRecord_CertificateExists() { // arrange long uln = 1234567890; string lastname = "Bloggs"; string standard = "1"; string epaReference = "CERTIFICATE_EXISTS"; var expectedResponse = new ApiResponse { StatusCode = (int)HttpStatusCode.BadRequest, Message = "Certificate already exists, cannot delete EPA record" }; _MockHttp.When(HttpMethod.Delete, $"{apiBaseAddress}/api/v1/epa/{uln}/{lastname}/{standard}/{epaReference}") .Respond(HttpStatusCode.BadRequest, "application/json", JsonConvert.SerializeObject(expectedResponse)); // act var request = new DeleteEpaRequest { Uln = uln, FamilyName = lastname, Standard = standard, EpaReference = epaReference }; var actual = await _ApiClient.DeleteEpaRecord(request); // assert Assert.That(actual.Error, Is.Not.Null); Assert.That(actual.Error.StatusCode, Is.EqualTo(expectedResponse.StatusCode)); Assert.That(actual.Error.Message, Is.EqualTo(expectedResponse.Message)); }
public async Task <DeleteEpaResponse> DeleteEpaRecord(DeleteEpaRequest request) { var error = await Delete <ApiResponse>($"api/v1/epa/{request.Uln}/{request.FamilyName}/{request.Standard}/{request.EpaReference}"); return(new DeleteEpaResponse { Uln = request.Uln, FamilyName = request.FamilyName, Standard = request.Standard, EpaReference = request.EpaReference, Error = error }); }
public async Task DeleteEpaRecord() { // arrange long uln = 1234567890; string lastname = "Bloggs"; string standard = "1"; string epaReference = "123456790"; _MockHttp.When(HttpMethod.Delete, $"{apiBaseAddress}/api/v1/epa/{uln}/{lastname}/{standard}/{epaReference}") .Respond(HttpStatusCode.OK, "application/json", string.Empty); // act var request = new DeleteEpaRequest { Uln = uln, FamilyName = lastname, Standard = standard, EpaReference = epaReference }; var actual = await _ApiClient.DeleteEpaRecord(request); // assert Assert.That(actual.Error, Is.Null); }
public async Task DeleteEpaRecordExample() { long uln = 1234567890; string lastName = "Blogs"; string standard = "1"; string epaReference = "1234567890"; DeleteEpaRequest epaToDelete = new DeleteEpaRequest { Uln = uln, FamilyName = lastName, Standard = standard, EpaReference = epaReference }; if (epaToDelete.IsValid(out _)) { // NOTE: The External API performs validation, however it is a good idea to check beforehand await _EpaApiClient.DeleteEpaRecord(epaToDelete); } }