コード例 #1
0
        public async Task ItCanGetConnectionsForManyFiles()
        {
            var request  = new ArticleFileConnectionListRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);
            var response = await ArticleFileConnectionService.GetArticleFileConnectionsAsync(request);

            Assert.IsNotNull(response);
            Assert.IsNotNull(response.Data);
        }
コード例 #2
0
        public static async Task <ArticleFileConnections> GetArticleFileConnectionAsync(
            ArticleFileConnectionListRequest listRequest,
            string fileId)
        {
            var apiRequest = new FortnoxApiClientRequest <SingleResource <ArticleFileConnections> >(
                HttpMethod.Get,
                listRequest.AccessToken,
                listRequest.ClientSecret,
                $"{ApiEndpoints.ArticleFileConnections}/{fileId}"
                );

            return((await FortnoxAPIClient.CallAsync(apiRequest)).Data);
        }
コード例 #3
0
        public static async Task <ListedResourceResponse <ArticleFileConnections> > GetArticleFileConnectionsAsync(
            ArticleFileConnectionListRequest listRequest)
        {
            var apiRequest = new FortnoxApiClientRequest <ListedResourceResponse <ArticleFileConnections> >(
                HttpMethod.Get,
                listRequest.AccessToken,
                listRequest.ClientSecret,
                ApiEndpoints.ArticleFileConnections
                );

            apiRequest.SetPageAndLimit(listRequest.Page, listRequest.Limit);

            return(await FortnoxAPIClient.CallAsync(apiRequest));
        }
コード例 #4
0
        public async Task ItCanGetConnectionsForAFile()
        {
            var fileConnections = await GetConnections();

            if (fileConnections == null || !fileConnections.Any())
            {
                Assert.Inconclusive("No connection exist between any article to any file in the system");
                return;
            }

            var request  = new ArticleFileConnectionListRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);
            var response = await ArticleFileConnectionService.GetArticleFileConnectionAsync(
                request,
                fileConnections.First().FileId
                );

            Assert.IsNotNull(response);
            Assert.AreEqual(fileConnections.First().FileId, response.FileId);
        }
コード例 #5
0
        public async Task ItCanDeleteAConnectionForAFile()
        {
            var initialConnections = await GetConnections();

            var articleFileConnection = await CreateConnection();

            try
            {
                var deleteRequest = new FortnoxApiRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);
                await ArticleFileConnectionService.DeleteArticleFileConnection(deleteRequest, articleFileConnection.FileId);

                var getConnectionRequest = new ArticleFileConnectionListRequest(
                    connectionSettings.AccessToken,
                    connectionSettings.ClientSecret
                    );

                if (initialConnections.Count < 1)
                {
                    await Assert.ThrowsExceptionAsync <Exception>(async() =>
                                                                  await ArticleFileConnectionService.GetArticleFileConnectionAsync(
                                                                      getConnectionRequest,
                                                                      articleFileConnection.FileId
                                                                      )
                                                                  );
                }
                else
                {
                    var currentConnections = await GetConnections();

                    Assert.AreEqual(initialConnections.Count, currentConnections.Count);
                }
            }
            finally
            {
                await DeleteFile(articleFileConnection.FileId);
            }
        }
コード例 #6
0
        private async Task <List <ArticleFileConnections> > GetConnections()
        {
            var request = new ArticleFileConnectionListRequest(connectionSettings.AccessToken, connectionSettings.ClientSecret);

            return((await ArticleFileConnectionService.GetArticleFileConnectionsAsync(request)).Data.ToList());
        }