public async Task TestPublicKeyCanBePublishedAndIsReadCorrectlyFromResponse() { var client = new RestClient("https://localhost:44381"); var repository = new RestKvkRepository(client); var key = Encryption.Create(); await repository.RegisterCompanyPublicKeyAsync("242630600", key); var publicKey = await repository.GetCompanyPublicKeyAsync("242630600"); Assert.IsTrue(publicKey.SequenceEqual(key.Export(CngKeyBlobFormat.EccFullPublicBlob))); }
public async Task TestClientDoesNotReturnOkResponseOnFindByKvkNumberShouldThrowException() { var response = new RestResponse { StatusCode = HttpStatusCode.BadRequest }; var client = new Mock <IRestClient>(); client.Setup(c => c.ExecuteTaskAsync(It.IsAny <IRestRequest>())).ThrowsAsync(new ApiException(response)); var repository = new RestKvkRepository(client.Object); await repository.GetByKvkNumberAsync("401196200"); }
public async Task TestClientReturnsOkResponseOnFindByKvkNumberShouldMapToDynamicType() { var response = new RestResponse { StatusCode = HttpStatusCode.OK, Content = "{ \"Json\": \"OK\" }" }; var client = new Mock <IRestClient>(); client.Setup(c => c.ExecuteTaskAsync(It.IsAny <IRestRequest>())).ReturnsAsync(response); var repository = new RestKvkRepository(client.Object); var responseJson = await repository.GetByKvkNumberAsync("401196200"); Assert.AreEqual("OK", responseJson.Values.First().ToString()); }
public async Task SetupAsync() { var invoiceRepository = new IotaInvoiceRepository(IotaRepository); var kvkRepository = new RestKvkRepository(new RestClient("https://localhost:44381")); //var companyKeys = Encryption.Create(); //var document = Encoding.UTF8.GetBytes("NL63ABNA0265980487"); //var bundleHash = await invoiceRepository.PublishInvoiceHashAsync(document, companyKeys); //await kvkRepository.RegisterCompanyPublicKeyAsync("401196200", companyKeys); var parsedInvoice = await ImageParser.Parse("C:\\Projects\\Odyssey\\IMG_20190413_170510.jpg"); parsedInvoice.Hash = new Hash("EJKEGJVZVBCPWWSBCGGJUFNSXLVAPJSIUOUHEILDEIL9QTKZPKBIUWMHPALQDQ9IDWJEJCZSSBSPKVGB9"); parsedInvoice.KvkNumber = "401196200"; var invoiceVerificator = new InvoiceVerificator(invoiceRepository, kvkRepository); var result = await invoiceVerificator.IsValid(parsedInvoice); }