コード例 #1
0
        public void FileNameWithEmptyDateFieldTest( )
        {
            var fileName = " - Steam - Pillars of Eternity.pdf";
            var fne      = new FileNameExtractor( );

            fne.Extract(fileName);
        }
コード例 #2
0
        public void FileNameWithEmptyOrganisationFieldTest( )
        {
            var fileName = "2016-10-29 -  - Pillars of Eternity.pdf";
            var fne      = new FileNameExtractor( );

            fne.Extract(fileName);
        }
コード例 #3
0
        public void FileNameWithEmptyTitleFieldTest( )
        {
            var fileName = "2016-10-29 - Steam - .pdf";
            var fne      = new FileNameExtractor( );

            fne.Extract(fileName);
        }
コード例 #4
0
        public void FileNameWithMorePathLevels_Extract_CorrectFileNameReturned()
        {
            FileNameExtractor fileNameExtractor = new FileNameExtractor();

            string actualName   = fileNameExtractor.Extract("C:\\FileFolder\\fileName.ext");
            string expectedName = "fileName.ext";

            Assert.IsTrue(expectedName.Equals(actualName));
        }
コード例 #5
0
        public void FileName_Extract_SameNameReturned()
        {
            FileNameExtractor fileNameExtractor = new FileNameExtractor();

            string actualName   = fileNameExtractor.Extract("fileName.ext");
            string expectedName = "fileName.ext";

            Assert.IsTrue(expectedName.Equals(actualName));
        }
コード例 #6
0
        public void FileNameWithoutSeparatorTest( )
        {
            var fileName = "2017-01-05-Cineplex-Vaiana.pdf";
            var expected = Tuple.Create(
                new DateTime(2017, 01, 05), "Cineplex", "Vaiana");

            var fne    = new FileNameExtractor( );
            var actual = fne.Extract(fileName);

            Assert.AreEqual(expected, actual);
        }
コード例 #7
0
        public void FileNameWithWrongDateFormatTest( )
        {
            var fileName =
                "22-10-2016 - Bonding - Hackathon.pdf";
            var expected = Tuple.Create(
                new DateTime(2016, 10, 22),
                "Bonding", "Hackathon");

            var fne    = new FileNameExtractor( );
            var actual = fne.Extract(fileName);

            Assert.AreEqual(expected, actual);
        }
コード例 #8
0
        public void FileNameWithManyWhitespacesTest( )
        {
            var fileName =
                "   2016-10-29      -   Steam   -    Pillars of Eternity    .pdf";
            var expected = Tuple.Create(
                new DateTime(2016, 10, 29),
                "Steam", "Pillars of Eternity");

            var fne    = new FileNameExtractor( );
            var actual = fne.Extract(fileName);

            Assert.AreEqual(expected, actual);
        }
コード例 #9
0
        public void FileNameWithManySeparatorTest( )
        {
            var fileName =
                "2017-01-02 - Sparkasse - Konto_123456789 - Auszug_2110_012.PDF";
            var expected = Tuple.Create(
                new DateTime(2017, 01, 02),
                "Sparkasse", "Konto_123456789 - Auszug_2110_012");

            var fne    = new FileNameExtractor( );
            var actual = fne.Extract(fileName);

            Assert.AreEqual(expected, actual);
        }
コード例 #10
0
        public void CorrectFileNameTest( )
        {
            var fileName =
                "2017-03-14 - FH Aachen - Bescheinigung über angemeldete Prüfungen";
            var expected = Tuple.Create(
                new DateTime(2017, 03, 14),
                "FH Aachen", "Bescheinigung über angemeldete Prüfungen");

            var fne    = new FileNameExtractor( );
            var actual = fne.Extract(fileName);

            Assert.AreEqual(expected, actual);
        }
コード例 #11
0
        public static void Initialise()
        {
            if (s_InteractionFileContents != null)
            {
                return;
            }

            s_InteractionFileContents = new Dictionary<string, string>();

            string[] files = Directory.GetFiles(Directory.GetCurrentDirectory() + GlobalConstants.SCRIPTS_FOLDER + "Needs", "*.lua");
            foreach(string file in files)
            {
                string name = FileNameExtractor.ExtractName(file, 3);
                string contents = File.ReadAllText(file);
                s_InteractionFileContents.Add(name, contents);
            }
        }
コード例 #12
0
        public void EmptyFilePath_Extract_ThrowsException()
        {
            FileNameExtractor fileNameExtractor = new FileNameExtractor();

            string actualName = fileNameExtractor.Extract(string.Empty);
        }
コード例 #13
0
        static void Main(string[] args)
        {
            string   dirName   = ".";
            string   match     = "*.*";
            bool     recursive = false;
            string   output    = "";
            DateTime date;
            string   exclude = "";
            AbstarctDirectoryOperation operation = new Indentity();

            for (int i = 0; i < args.Length; i++)
            {
                switch (args[i])
                {
                case var path when Directory.Exists(path):
                    dirName = path;

                    break;

                case "-m" when !args[i + 1].StartsWith("-"):
                    match = args[i + 1];
                    i++;
                    break;

                case "-r":
                    recursive = true;
                    break;

                case "-o" when !string.IsNullOrEmpty(Path.GetFullPath(args[i + 1])):
                    output = args[i + 1];
                    i++;
                    break;

                case "-e" when !args[i + 1].StartsWith("-"):
                    exclude = args[i + 1];
                    i++;
                    break;

                case "--exact-date" when DateTime.TryParseExact(args[i + 1], "yyyy-MM-dd-HH-mm-ss", null, DateTimeStyles.None, out date):     //format: yyyy-MM-dd-HH-mm-ss
                    operation = new ExactDateSetter(args[i + 1]);

                    i++;
                    break;

                case "--last-modified":
                    operation = new FileLastModified();
                    break;

                case "--from-filename" when !args[i + 1].StartsWith("-"):
                    operation = new FileNameExtractor(args[i + 1]);
                    i++;
                    break;

                case "--iterator":
                    operation = new Iterator();
                    break;

                case "--debug":
                    Debugger.Launch();
                    break;

                default:
                    throw new Exception("Invalid argument");
                }
            }
            if (string.IsNullOrEmpty(output))
            {
                output = dirName;
            }
            if (recursive)
            {
                operation.PerfromRecursively(dirName, match, exclude, output);
            }
            else
            {
                operation.Perform(dirName, match, exclude, output);
            }
        }