public async Task <object> GetUserPostsAsync(PostsPlatform platform, string platformId)
        {
            var requestPlatform = platform.ToApiString();

            var jsonAsStream = await ApiProcessor.GetAsync($"{_baseUrl}/{requestPlatform}/{platformId}");

            object apiData;

            switch (platform)
            {
            case PostsPlatform.Instagram:
                apiData = await _jsonHelper.Deserialise <PostBase[]>(jsonAsStream);

                break;

            case PostsPlatform.TikTok:
                apiData = await _jsonHelper.Deserialise <PostBase[]>(jsonAsStream);

                break;

            case PostsPlatform.Twitter:
                apiData = await _jsonHelper.Deserialise <PostBase[]>(jsonAsStream);

                break;

            default:
                throw new NotSupportedException("Invalid platform type.");
            }
            return(apiData);
        }
Beispiel #2
0
        public Task <PostBase[]> GetUserPostsAsync(PostsPlatform platform, string userId)
        {
            if (string.IsNullOrEmpty(userId))
            {
                throw new ArgumentNullException(nameof(userId));
            }

            return(_service.GetUserPostsAsync(platform, userId));
        }
Beispiel #3
0
        public async Task DemoRun_GetUserPostsAsync(PostsPlatform platform, string userId)
        {
            //Arrange
            PostsClient client = new PostsClient();

            //Act
            var result = await client.GetUserPostsAsync(platform, userId);

            //Assert
            Assert.NotNull(result);
        }