public async void GetFiles_WithCurrentDirectory_MustReturnSpectedChildren()
        {
            var service = new LocalDriveService();

            var currentDirectory = Helpers.FileSystem.CurrentDirectory;
            var expectedValue    = Directory
                                   .EnumerateFiles(currentDirectory, "*.*", SearchOption.TopDirectoryOnly)
                                   .Where(file => !string.IsNullOrEmpty(file))
                                   .Where(file => File.Exists(file))
                                   .OrderBy(file => file)
                                   .Select(file => new FileInfo(file))
                                   .Where(fileInfo => fileInfo != null)
                                   .Select(fileInfo => new FileVM
            {
                ID              = fileInfo.FullName,
                Name            = fileInfo.Name,
                CreatedDateTime = fileInfo.CreationTime,
                SizeInBytes     = fileInfo.Length,
                Path            = fileInfo.DirectoryName,
                ParentID        = fileInfo.DirectoryName
            })
                                   .ToArray();
            var directoryVM = new DirectoryVM {
                ID = currentDirectory
            };
            var value = await service.GetFiles(directoryVM);

            Assert.NotNull(value);
            Assert.NotEmpty(value);
            Assert.Equal(
                expectedValue.Where(x => x.Name.EndsWith("dll")).Select(x => x.ID).ToArray(),
                value.Where(x => x.Name.EndsWith("dll")).Select(x => x.ID).ToArray());
        }
Beispiel #2
0
        public async void GetDirectories_WithCurrentDirectory_MustReturnSpectedChildren()
        {
            var service = new LocalDriveService();

            var currentDirectory = Helpers.FileSystem.CurrentDirectory;
            var expectedValue    = Directory
                                   .EnumerateDirectories(currentDirectory)
                                   .Where(x => !string.IsNullOrEmpty(x))
                                   .OrderBy(dir => dir)
                                   .Select(dir => new DirectoryInfo(dir))
                                   .Where(dirInfo => dirInfo != null)
                                   .Select(dirInfo => new DirectoryVM
            {
                ID       = dirInfo.FullName,
                Name     = dirInfo.Name,
                Path     = dirInfo.FullName,
                ParentID = currentDirectory
            })
                                   .ToArray();
            var directoryVM = new DirectoryVM {
                ID = currentDirectory
            };
            var value = await service.GetDirectories(directoryVM);

            Assert.NotNull(value);
            Assert.NotEmpty(value);
            Assert.Equal(expectedValue.Select(x => x.ID).ToArray(), value.Select(x => x.ID).ToArray());
        }
Beispiel #3
0
        public async void SearchFiles_WithCurrentDirectory_MustReturnSpectedChildren(int limit)
        {
            var service = new LocalDriveService();

            var currentDirectory = Helpers.FileSystem.CurrentDirectory;
            var expectedValue    = Directory
                                   .EnumerateFiles(currentDirectory, "*.dll", SearchOption.AllDirectories)
                                   .Where(file => !string.IsNullOrEmpty(file))
                                   .Where(file => File.Exists(file))
                                   .OrderBy(file => file)
                                   .Take(limit)
                                   .Select(file => new FileInfo(file))
                                   .Where(fileInfo => fileInfo != null)
                                   .Select(fileInfo => new FileVM
            {
                ID              = fileInfo.FullName,
                Name            = fileInfo.Name,
                CreatedDateTime = fileInfo.CreationTime,
                SizeInBytes     = fileInfo.Length,
                Path            = fileInfo.DirectoryName,
                ParentID        = fileInfo.DirectoryName
            })
                                   .ToArray();
            var directoryVM = new DirectoryVM {
                ID = currentDirectory
            };
            var value = await service.SearchFiles(directoryVM, "*.dll", limit);

            Assert.Equal(expectedValue?.Select(x => x.Name)?.ToArray(), value?.Select(x => x.Name)?.ToArray());
            Assert.InRange(value.Length, 0, limit);
        }
        public async void Download_WithInvalidParameter_MustReturnNull(string fileID)
        {
            var service = new LocalDriveService();

            var value = await service.Download(fileID);

            Assert.Null(value);
        }
Beispiel #5
0
        public async void Upload_WithInvalidFileID_MustReturnNull(string fileID)
        {
            var service = new LocalDriveService();

            var value = await service.Upload(fileID, null);

            Assert.Null(value);
        }
        public async void Service_CheckConnection_MustReturnTrue()
        {
            var service = new LocalDriveService();

            var value = await service.CheckConnectionAsync();

            Assert.True(value);
        }
Beispiel #7
0
        public async void GetDirectories_WithNullParameter_MustReturnNull()
        {
            var service = new LocalDriveService();

            DirectoryVM directoryVM = null;
            var         value       = await service.GetDirectories(directoryVM);

            Assert.Null(value);
        }
Beispiel #8
0
        public async void Upload_WithoutConnection_MustReturnNull()
        {
            var connection = ConnectionBuilder.Create().WithCheckConnectionValue(false).Build();
            var service    = new LocalDriveService(connection);

            var value = await service.Upload(null, null);

            Assert.Null(value);
        }
Beispiel #9
0
        public async void Upload_WithInvalidFileContent_MustReturnNull(byte[] fileContent)
        {
            var service = new LocalDriveService();

            var fileID = Helpers.FileSystem.SampleFile;
            var value  = await service.Upload(fileID, fileContent);

            Assert.Null(value);
        }
        public async void Service_Disconnect_MustExists()
        {
            var service = new LocalDriveService();

            var expected = true;
            await service.DisconnectAsync();

            Assert.True(expected);
        }
Beispiel #11
0
        public async void SearchFiles_WithNullParameter_MustReturnNull()
        {
            var service = new LocalDriveService();

            DirectoryVM directoryVM = null;
            var         value       = await service.SearchFiles(directoryVM, "*.*");

            Assert.Null(value);
        }
        public async void Download_WithoutConnection_MustReturnNull()
        {
            var connection = ConnectionBuilder.Create().WithCheckConnectionValue(false).Build();
            var service    = new LocalDriveService(connection);

            var fileID = (string)null;
            var value  = await service.Download(fileID);

            Assert.Null(value);
        }
Beispiel #13
0
        public async void GetDirectories_WithEmptyID_MustReturnNull()
        {
            var service = new LocalDriveService();

            DirectoryVM directoryVM = new DirectoryVM {
            };
            var value = await service.GetDirectories(directoryVM);

            Assert.Null(value);
        }
Beispiel #14
0
        public async void Service_WithoutConnection_MustReturnNull()
        {
            var connection = ConnectionBuilder.Create().WithCheckConnectionValue(false).Build();
            var service    = new LocalDriveService(connection);

            DirectoryVM directoryVM = null;
            var         value       = await service.GetDirectories(directoryVM);

            Assert.Null(value);
        }
Beispiel #15
0
        public async void ProfileHasTheSpectedContent()
        {
            var service = new LocalDriveService();

            var expectedID          = Environment.CommandLine;
            var expectedDescription = $"{Environment.UserName} on {Environment.MachineName}";
            var value = await service.GetProfile();

            Assert.Equal(expectedID, value.ID);
            Assert.Equal(expectedDescription, value.Description);
        }
Beispiel #16
0
        public async void SearchFiles_WithInvalidDirectory_MustReturnNull(string directoryID)
        {
            var service = new LocalDriveService();

            var directoryVM = new DirectoryVM {
                ID = directoryID
            };
            var value = await service.SearchFiles(directoryVM, "*.*");

            Assert.Null(value);
        }
Beispiel #17
0
        public async void SearchFiles_WithInvalidLimit_MustReturnNull(int limit)
        {
            var service = new LocalDriveService();

            var directoryVM = new DirectoryVM {
                ID = Helpers.FileSystem.CurrentDirectory
            };
            var value = await service.SearchFiles(directoryVM, "*.*", limit);

            Assert.Null(value);
        }
        public async void GetFiles_WithInvalidParameter_MustReturnNull(string directoryID)
        {
            var service = new LocalDriveService();

            var directoryVM = new DirectoryVM {
                ID = directoryID
            };
            var value = await service.GetFiles(directoryVM);

            Assert.Null(value);
        }
Beispiel #19
0
        public async void Upload_WithValidContentButInvalidFileName_MustReturnNull()
        {
            using (var sampleClone = new Helpers.SampleClone())
            {
                var service = new LocalDriveService();

                var directoryID = Path.GetDirectoryName(sampleClone.FilePath);
                var fileName    = "#,.*%";
                var value       = await service.Upload(directoryID, fileName, sampleClone.FileContent);

                Assert.Null(value);
            }
        }
        public async void Download_WithValidFile_MustReturnSpectedData()
        {
            using (var sampleClone = new Helpers.SampleClone())
            {
                var service = new LocalDriveService();

                sampleClone.WriteFile();
                var expectedValue = sampleClone.FileContent.Length;
                var value         = await service.Download(sampleClone.FilePath);

                Assert.Equal(expectedValue, value?.Length);
            }
        }
Beispiel #21
0
        public async void GetDirectories_WithInvalidID_MustReturnNull()
        {
            var service = new LocalDriveService();

            var invalidDirectoryPath = Directory.GetCurrentDirectory()
                                       .Replace(Path.DirectorySeparatorChar.ToString(), ":,^");
            DirectoryVM directoryVM = new DirectoryVM {
                ID = invalidDirectoryPath
            };
            var value = await service.GetDirectories(directoryVM);

            Assert.Null(value);
        }
Beispiel #22
0
        public async void Upload_WithValidExistingFile_MustReturnSpectedData()
        {
            using (var sampleClone = new Helpers.SampleClone())
            {
                var service = new LocalDriveService();

                sampleClone.WriteFile();
                var expectedValue = await service.GetDetails(sampleClone.FilePath);

                var value = await service.Upload(sampleClone.FilePath, sampleClone.FileContent);

                Assert.Equal(expectedValue?.SizeInBytes, value?.SizeInBytes);
            }
        }
        public async void Service_GetStorageList_MustReturnSpectedValue()
        {
            var service = new LocalDriveService();

            var expectedValue = System.IO.DriveInfo
                                .GetDrives()
                                .Select(drive => drive.RootDirectory.FullName)
                                .ToArray();
            var drivesList = await service.GetDrives();

            var value = drivesList.Select(x => x.ID).ToArray();

            Assert.Equal(expectedValue, value);
        }
Beispiel #24
0
        public async void Upload_WithValidNonExistingFile_MustReturnSpectedData()
        {
            using (var sampleClone = new Helpers.SampleClone())
            {
                var service = new LocalDriveService();

                var directoryID = Path.GetDirectoryName(sampleClone.FilePath);
                var fileName    = Path.GetFileName(sampleClone.FilePath);
                var value       = await service.Upload(directoryID, fileName, sampleClone.FileContent);

                var expectedValue = await service.GetDetails($"{directoryID}{Path.DirectorySeparatorChar}{fileName}");

                Assert.Equal(expectedValue?.SizeInBytes, value?.SizeInBytes);
            }
        }
        public async void GetDetails_WithValidFile_MustReturnSpectedData()
        {
            var service = new LocalDriveService();

            var sampleFile    = Helpers.FileSystem.SampleFile;
            var expectedValue = (new string[] { sampleFile })
                                .Select(file => new FileInfo(file))
                                .Where(fileInfo => fileInfo != null)
                                .Select(fileInfo => new FileVM
            {
                ID              = fileInfo.FullName,
                Name            = fileInfo.Name,
                CreatedDateTime = fileInfo.CreationTime,
                SizeInBytes     = fileInfo.Length,
                Path            = fileInfo.DirectoryName,
                ParentID        = fileInfo.DirectoryName
            })
                                .FirstOrDefault();
            var value = await service.GetDetails(sampleFile);

            Assert.Equal(expectedValue?.Name, value?.Name);
        }