コード例 #1
0
        public async Task ItCanCreateAConnection()
        {
            var fileId = await CreateInboxFile("inbox_s");

            var supplierInvoices = await GetInvoices();

            var supplierInvoice = supplierInvoices.FirstOrDefault(x => x.GivenNumber != string.Empty);
            var request         = new FortnoxApiRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);

            if (supplierInvoice == null)
            {
                // Supplier invoices cannot be deleted through the API - don't pollute the system.
                Assert.Inconclusive("No supplier invoices exist in the system");
            }

            try
            {
                var response = await SupplierInvoiceFileConnectionService.CreateSupplierInvoiceFileConnection(
                    request,
                    fileId,
                    supplierInvoice.GivenNumber
                    );

                await DeleteConnection(fileId);

                Assert.IsNotNull(response);
                Assert.AreEqual(fileId, response.FileId);
                Assert.AreEqual(supplierInvoice.SupplierName, response.SupplierName);
                Assert.AreEqual(supplierInvoice.GivenNumber, response.SupplierInvoiceNumber);
            }
            finally
            {
                await DeleteFile(fileId);
            }
        }
コード例 #2
0
        private async Task <List <SupplierInvoiceFileConnections> > GetConnections()
        {
            var request = new SupplierInvoiceFileConnectionListRequest(
                connectionSettings.AccessToken,
                connectionSettings.ClientSecret
                );

            return((await SupplierInvoiceFileConnectionService.GetSupplierInvoiceFileConnectionsAsync(request)).Data?.ToList());
        }
コード例 #3
0
        public async Task ItCanGetConnections()
        {
            var request = new SupplierInvoiceFileConnectionListRequest(
                connectionSettings.AccessToken,
                connectionSettings.ClientSecret
                );
            var response = await SupplierInvoiceFileConnectionService.GetSupplierInvoiceFileConnectionsAsync(request);

            Assert.IsNotNull(response);
            Assert.IsNotNull(response.Data);
        }
コード例 #4
0
        public async Task ItCanGetAConnection()
        {
            var connections = await GetConnections();

            if (connections == null || !connections.Any())
            {
                Assert.Inconclusive("No connections exist between a file and a supplier invoice in the system");
            }

            var request = new SupplierInvoiceFileConnectionListRequest(
                connectionSettings.AccessToken,
                connectionSettings.ClientSecret
                );
            var response = await SupplierInvoiceFileConnectionService.GetSupplierInvoiceFileConnectionAsync(
                request,
                connections.First().FileId
                );

            Assert.IsNotNull(response);
            Assert.AreEqual(connections.First().FileId, response.FileId);
        }
コード例 #5
0
        private async Task DeleteConnection(string fileId)
        {
            var request = new FortnoxApiRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);

            await SupplierInvoiceFileConnectionService.DeleteSupplierInvoiceFileConnection(request, fileId);
        }