public void DirectoriesValidationResultIsSuccess()
        {
            // Prepare
            int                       maxFileSize   = 10;
            IConfiguration            configuration = MockFactory.ConfigurationWithMaximumFileSizeOf(maxFileSize);
            MaximumFileSizeValidation validation    = new MaximumFileSizeValidation(configuration);
            IDirectoryInfo            directory     = MockFactory.DirectoryWithName("a_directory_name");

            // Exercise
            IValidationResult validationResult = validation.Validate(directory);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "A directory triggers a maximum file size validation error.");
        }
Beispiel #2
0
        public void WhenDataSetSizeLessThanMaxResultIsSuccess()
        {
            // Prepare
            long           maxDatasetSizeInBytes    = 255;
            IConfiguration configuration            = MockFactory.ConfigurationWithMaximumDatasetSizeOf(maxDatasetSizeInBytes);
            MaximumDatasetSizeValidation validation = new MaximumDatasetSizeValidation(configuration);
            INamespaceInfo namespaceInfo            = MockFactory.NamespaceWithPathAndSize("c:\\sample_path", maxDatasetSizeInBytes - 1);

            // Exercise
            IValidationResult validationResult = validation.Validate(namespaceInfo);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "Dataset validation triggered an error when dataset is less than max.");
        }
        public void WhenFileIsSizeIsEqualToMaxSizeValidationResultIsSuccess()
        {
            // Prepare
            int                       maxFileSize   = 10;
            IConfiguration            configuration = MockFactory.ConfigurationWithMaximumFileSizeOf(maxFileSize);
            MaximumFileSizeValidation validation    = new MaximumFileSizeValidation(configuration);
            IFileInfo                 file          = MockFactory.FileWithSizeOf(maxFileSize);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "A file with size equal to maximum file size triggers an error.");
        }
Beispiel #4
0
        public void WhenDataSetSizeIsTooBigValidationResultIsError()
        {
            // Prepare
            long           maxDatasetSizeInBytes    = 255;
            IConfiguration configuration            = MockFactory.ConfigurationWithMaximumDatasetSizeOf(maxDatasetSizeInBytes);
            MaximumDatasetSizeValidation validation = new MaximumDatasetSizeValidation(configuration);
            INamespaceInfo namespaceInfo            = MockFactory.NamespaceWithPathAndSize("c:\\sample_path", maxDatasetSizeInBytes + 1);

            // Exercise
            IValidationResult validationResult = validation.Validate(namespaceInfo);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "Dataset validation does not trigger an error when dataset is too big.");
        }
Beispiel #5
0
        public void WhenFilenameLengthIsLessThanMaxLengthValidationResultIsSuccess()
        {
            // Prepare
            int            maxFilenameLength           = 3;
            IConfiguration configuration               = MockFactory.ConfigurationWithMaximumFilenameLength(maxFilenameLength);
            MaximumFilenameLengthValidation validation = new MaximumFilenameLengthValidation(configuration);
            string    filename = "ac";
            IFileInfo file     = MockFactory.FileWithName(filename);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "File with name of length less than max length triggers an error.");
        }
        public void WhenUNCPathRelativePartIsEqualToMaximumPathLengthValidationResultIsSuccess()
        {
            // Prepare
            int            maxPathLength           = 5;
            IConfiguration configuration           = MockFactory.ConfigurationWithMaximumPathLengthOf(maxPathLength);
            MaximumPathLengthValidation validation = new MaximumPathLengthValidation(configuration);
            string    path = "\\\\servername\\share$\\asdf";
            IFileInfo file = MockFactory.FileWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "File with UNC path relative parth length equal to max path length triggers an error.");
        }
        public void WhenUNCPathIsTooLongValidationResultIsError()
        {
            // Prepare
            int            maxPathLength           = 3;
            IConfiguration configuration           = MockFactory.ConfigurationWithMaximumPathLengthOf(maxPathLength);
            MaximumPathLengthValidation validation = new MaximumPathLengthValidation(configuration);
            string    path = "\\\\servername\\share$\\asdfasdf\\asdfasdf";
            IFileInfo file = MockFactory.FileWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "File with path length longer than max path length does not trigger an error.");
        }
        public void WhenLocalFilePathIsEqualToMaxPathLengthValidationResultIsSuccess()
        {
            // Prepare
            int            maxPathLength           = 20;
            IConfiguration configuration           = MockFactory.ConfigurationWithMaximumPathLengthOf(maxPathLength);
            MaximumPathLengthValidation validation = new MaximumPathLengthValidation(configuration);
            string    path = "C:/asdfasdf/asdfasdf";
            IFileInfo file = MockFactory.FileWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "File with path length equal to max path length triggers an error.");
        }
        public void WhenLocalDirectoryPathIsTooLongValidationResultIsError()
        {
            // Prepare
            int            maxPathLength           = 20;
            IConfiguration configuration           = MockFactory.ConfigurationWithMaximumPathLengthOf(maxPathLength);
            MaximumPathLengthValidation validation = new MaximumPathLengthValidation(configuration);
            string         tooLongPath             = "C:/asdfasdf/asdfasdf/asdfasdf";
            IDirectoryInfo directory = MockFactory.DirectoryWithPath(tooLongPath);

            // Exercise
            IValidationResult validationResult = validation.Validate(directory);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "Directory with too long path does not trigger an error.");
        }
Beispiel #10
0
        public void WhenLocalFileDepthIsEqualToMaxDepthValidationResultIsSuccess()
        {
            // Prepare
            int                        maxDepth      = 4;
            IConfiguration             configuration = MockFactory.ConfigurationWithMaximumDepthOf(maxDepth);
            MaximumTreeDepthValidation validation    = new MaximumTreeDepthValidation(configuration);
            var                        path          = Path.Combine(@"C:\", "first", "second", "third", "fourth");
            IFileInfo                  file          = MockFactory.FileWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "Local file with depth equal to max depth triggers an error.");
        }
        public void WhenUNCFileDepthIsEqualToMaxDepthValidationResultIsSuccess()
        {
            // Prepare
            int                        maxDepth      = 4;
            IConfiguration             configuration = MockFactory.ConfigurationWithMaximumDepthOf(maxDepth);
            MaximumTreeDepthValidation validation    = new MaximumTreeDepthValidation(configuration);
            string                     path          = @"\\server\share$\first\second\third\fourth";
            IFileInfo                  file          = MockFactory.FileWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "UNC file with depth equal to max depth triggers an error.");
        }
        public void WhenFileIsTooBigValidationResultIsError()
        {
            // Prepare
            int                       maxFileSize   = 10;
            IConfiguration            configuration = MockFactory.ConfigurationWithMaximumFileSizeOf(maxFileSize);
            MaximumFileSizeValidation validation    = new MaximumFileSizeValidation(configuration);
            int                       tooBigSize    = maxFileSize + 1;
            IFileInfo                 tooBigFile    = MockFactory.FileWithSizeOf(tooBigSize);

            // Exercise
            IValidationResult validationResult = validation.Validate(tooBigFile);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "A file bigger than maximum file size does not trigger an error.");
        }
        public void WhenLocalDirectoryTreeDepthIsEqualToMaxDepthValidationResultIsSuccess()
        {
            // Prepare
            int                        maxDepth      = 4;
            IConfiguration             configuration = MockFactory.ConfigurationWithMaximumDepthOf(maxDepth);
            MaximumTreeDepthValidation validation    = new MaximumTreeDepthValidation(configuration);
            string                     path          = @"C:\first\second\third\fourth";
            IDirectoryInfo             directory     = MockFactory.DirectoryWithPath(path);

            // Exercise
            IValidationResult validationResult = validation.Validate(directory);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "Local file with depth equal to max depth triggers an error.");
        }
Beispiel #14
0
        public void WhenDirectoryNameIsTooLongValidationResultIsError()
        {
            // Prepare
            int            maxFilenameLength           = 3;
            IConfiguration configuration               = MockFactory.ConfigurationWithMaximumFilenameLength(maxFilenameLength);
            MaximumFilenameLengthValidation validation = new MaximumFilenameLengthValidation(configuration);
            string         tooLongName = "abcd";
            IDirectoryInfo directory   = MockFactory.DirectoryWithName(tooLongName);

            // Exercise
            IValidationResult validationResult = validation.Validate(directory);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "File with too long name does not trigger an error.");
        }
Beispiel #15
0
        public void WhenUNCFileIsDeeperThanMaxDepthValidationResultIsError()
        {
            // Prepare
            int                        maxDepth      = 3;
            IConfiguration             configuration = MockFactory.ConfigurationWithMaximumDepthOf(maxDepth);
            MaximumTreeDepthValidation validation    = new MaximumTreeDepthValidation(configuration);
            var                        tooDeepFile   = Path.Combine(@"\\server", "share$", "first", "second", "third", "fourth");
            IFileInfo                  file          = MockFactory.FileWithPath(tooDeepFile);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "Too deep local file does not trigger an error.");
        }
Beispiel #16
0
        public void WhenDirectoryNameLengthIsEqualToMaxLengthValidationResultIsSuccess()
        {
            // Prepare
            int            maxFilenameLength           = 3;
            IConfiguration configuration               = MockFactory.ConfigurationWithMaximumFilenameLength(maxFilenameLength);
            MaximumFilenameLengthValidation validation = new MaximumFilenameLengthValidation(configuration);
            string         dirName   = "abc";
            IDirectoryInfo directory = MockFactory.DirectoryWithName(dirName);

            // Exercise
            IValidationResult validationResult = validation.Validate(directory);

            // Verify
            AssertExtension.ValidationResultIsSuccess(validationResult, "File with name of length equal to max length triggers an error.");
        }
        public void WhenLocalFileIsDeeperThanMaxDepthValidationResultIsError()
        {
            // Prepare
            int                        maxDepth      = 3;
            IConfiguration             configuration = MockFactory.ConfigurationWithMaximumDepthOf(maxDepth);
            MaximumTreeDepthValidation validation    = new MaximumTreeDepthValidation(configuration);
            string                     tooDeepFile   = @"C:\first\second\third\fourth";
            IFileInfo                  file          = MockFactory.FileWithPath(tooDeepFile);

            // Exercise
            IValidationResult validationResult = validation.Validate(file);

            // Verify
            AssertExtension.ValidationResultIsError(validationResult, "Too deep local file does not trigger an error.");
        }