Exemple #1
0
        public async Task GetInvoice()
        {
            var createInvoice = await InvoiceClient.CreateInvoice(10000, "Hello world", TimeSpan.FromSeconds(3600));

            var getInvoice = await InvoiceClient.GetInvoice(createInvoice.Id);

            Assert.Equal(createInvoice.BOLT11, getInvoice.BOLT11);
        }
Exemple #2
0
        public async Task CreateLndInvoiceAndPay()
        {
            var merchantInvoice = await InvoiceClient.CreateInvoice(10000, "Hello world", TimeSpan.FromSeconds(3600));

            await EnsureLightningChannelAsync();

            var payResponse = await CustomerLnd.SendPaymentSyncAsync(new LnrpcSendRequest
            {
                Payment_request = merchantInvoice.BOLT11
            });

            var invoice = await InvoiceClient.GetInvoice(merchantInvoice.Id);

            Assert.True(invoice.PaidAt.HasValue);
        }
Exemple #3
0
        public async Task TestWaitListenInvoice()
        {
            var merchantInvoice = await InvoiceClient.CreateInvoice(10000, "Hello world", TimeSpan.FromSeconds(3600));

            var merchantInvoice2 = await InvoiceClient.CreateInvoice(10000, "Hello world", TimeSpan.FromSeconds(3600));

            var waitToken = default(CancellationToken);
            var listener  = await InvoiceClient.Listen(waitToken);

            var waitTask = listener.WaitInvoice(waitToken);

            await EnsureLightningChannelAsync();

            var payResponse = await CustomerLnd.SendPaymentSyncAsync(new LnrpcSendRequest
            {
                Payment_request = merchantInvoice.BOLT11
            });

            var invoice = await waitTask;

            Assert.True(invoice.PaidAt.HasValue);

            var waitTask2 = listener.WaitInvoice(waitToken);

            payResponse = await CustomerLnd.SendPaymentSyncAsync(new LnrpcSendRequest
            {
                Payment_request = merchantInvoice2.BOLT11
            });

            invoice = await waitTask2;
            Assert.True(invoice.PaidAt.HasValue);

            var waitTask3 = listener.WaitInvoice(waitToken);
            await Task.Delay(100);

            listener.Dispose();
            Assert.Throws <TaskCanceledException>(() => waitTask3.GetAwaiter().GetResult());
        }
Exemple #4
0
        public async Task CreateInvoice()
        {
            var res = await InvoiceClient.CreateInvoice(10000, "Hello world", TimeSpan.FromSeconds(3600));

            output.WriteLine("Result: " + res.ToJson());
        }