Example #1
0
        public void FromApiUploadShareList()
        {
            // ARRANGE
            UploadShareList expected = FactoryShare.UploadShareList;

            ApiUploadShareList param = new ApiUploadShareList {
                Range = new ApiRange {
                    Offset = expected.Offset,
                    Limit  = expected.Limit,
                    Total  = expected.Total
                },
                Items = new List <ApiUploadShare>(expected.Items.Count)
            };

            foreach (UploadShare current in expected.Items)
            {
                ApiUploadShare currentApi = new ApiUploadShare {
                    ShareId       = current.ShareId,
                    NodeId        = current.NodeId,
                    NodePath      = current.NodePath,
                    Name          = current.Name,
                    Notes         = current.Notes,
                    ExpireAt      = current.ExpireAt,
                    AccessKey     = current.AccessKey,
                    NotifyCreator = current.NotifyCreator,
                    CreatedAt     = current.CreatedAt,
                    CreatedBy     = new ApiUserInfo {
                        AvatarUuid  = current.CreatedBy.AvatarUUID,
                        DisplayName = current.CreatedBy.DisplayName,
                        Id          = current.CreatedBy.Id.Value
                    },
                    IsProtected               = current.IsProtected,
                    IsEncrypted               = current.IsEncrypted,
                    CurrentDoneUploadsCount   = current.CurrentDoneUploadsCount,
                    CurrentUploadedFilesCount = current.CurrentUploadedFilesCount,
                    MaxAllowedTotalSizeOverAllUploadedFiles = current.MaxAllowedTotalSizeOverAllUploadedFiles,
                    MaxAllowedUploads             = current.MaxAllowedUploads,
                    ShowUploadedFiles             = current.ShowUploadedFiles,
                    UploadedFilesExpirationPeriod = current.UploadedFilesExpirationPeriod
                };
                param.Items.Add(currentApi);
                Mock.Arrange(() => ShareMapper.FromApiUploadShare(currentApi)).Returns(current);
            }

            // ACT
            UploadShareList actual = ShareMapper.FromApiUploadShareList(param);

            // ASSERT
            Assert.Equal(expected, actual, new UploadShareListComparer());
        }
        internal static UploadShareList FromApiUploadShareList(ApiUploadShareList apiUploadShareList)
        {
            UploadShareList shareList = new UploadShareList {
                Offset = apiUploadShareList.Range.Offset,
                Limit  = apiUploadShareList.Range.Limit,
                Total  = apiUploadShareList.Range.Total,
                Items  = new List <UploadShare>()
            };

            foreach (ApiUploadShare currentShare in apiUploadShareList.Items)
            {
                shareList.Items.Add(FromApiUploadShare(currentShare));
            }

            return(shareList);
        }
Example #3
0
        public UploadShareList GetUploadShares(long?offset = null, long?limit = null, GetUploadSharesFilter filter = null, SharesSort sort = null)
        {
            _client.Executor.CheckApiServerVersion();

            #region Parameter Validation

            offset.NullableMustNotNegative(nameof(offset));
            limit.NullableMustPositive(nameof(limit));

            #endregion

            IRestRequest       restRequest = _client.Builder.GetUploadShares(offset, limit, filter, sort);
            ApiUploadShareList result      =
                _client.Executor.DoSyncApiCall <ApiUploadShareList>(restRequest, DracoonRequestExecutor.RequestType.GetUploadShares);
            return(ShareMapper.FromApiUploadShareList(result));
        }