public async Task DownloadByIdTest()
        {
            var contentHelper = new ContentClientHelper(client);

            var uri         = new Uri("ms-appx:///Modules/ContentModule/Assets/1.jpg");
            var storageFile = await StorageFile.GetFileFromApplicationUriAsync(uri);

            var stream = await storageFile.OpenReadAsync();

            var bytes = new byte[stream.Size];

            using (var dataReader = new DataReader(stream))
            {
                await dataReader.LoadAsync((uint)stream.Size);

                dataReader.ReadBytes(bytes);
            }

            var uploadId = await contentHelper.UploadPrivateImage(bytes);

            Assert.IsNotNull(uploadId);

            var downloadedBytes = await client.ContentClient.DownloadFileById(uploadId.Value);

            Assert.AreEqual(bytes.Length, downloadedBytes.Result.Length);
        }
        private async Task UploadUserImage(User user, byte[] imageBytes)
        {
            var contentHelper = new ContentClientHelper(QuickbloxClient.ContentClient);
            var uploadId = await contentHelper.UploadPrivateImage(imageBytes);
            if (uploadId == null)
            {
                await QmunicateLoggerHolder.Log(QmunicateLogLevel.Warn, "SignUpViewModel. Failed to upload user image");
                return;
            }

            UpdateUserRequest updateUserRequest = new UpdateUserRequest { User = new UserRequest { BlobId = uploadId } };
            await QuickbloxClient.UsersClient.UpdateUserAsync(user.Id, updateUserRequest);
        }