コード例 #1
0
        public void PatternWtComplexNavigation()
        {
            //Set constants
            const string pattern = @"C:\Temp\videos\*\*\dummy\second\*\Nvidia.bk2";

            //Set Mocks
            var directoryBrowser = MockRepository.GenerateMock <IDirectoryBrowser>();

            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos"))).Return(new[] { @"C:\Temp\videos\sub1", @"C:\Temp\videos\sub2" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub1"))).Return(new[] { @"C:\Temp\videos\sub1\data1", @"C:\Temp\videos\sub1\data2" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub2"))).Return(new[] { @"C:\Temp\videos\sub2\data3", @"C:\Temp\videos\sub2\data4" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub1\data1\dummy\second"))).Return(new[] { @"C:\Temp\videos\sub1\data1\dummy\second\third1", @"C:\Temp\videos\sub1\data1\dummy\second\third2" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub1\data2\dummy\second"))).Return(new[] { @"C:\Temp\videos\sub1\data2\dummy\second\third3", @"C:\Temp\videos\sub1\data2\dummy\second\third4" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub2\data3\dummy\second"))).Return(new[] { @"C:\Temp\videos\sub2\data3\dummy\second\third5", @"C:\Temp\videos\sub2\data3\dummy\second\third6" });
            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos\sub2\data4\dummy\second"))).Return(new[] { @"C:\Temp\videos\sub2\data4\dummy\second\third7", @"C:\Temp\videos\sub2\data4\dummy\second\third8" });

            //Run test
            var businessRule = new PathPatternTranslator(directoryBrowser);
            var result       = businessRule.GetPathFromPattern(pattern).ToList();

            //Validate
            directoryBrowser.VerifyAllExpectations();
            Assert.AreEqual(8, result.Count);
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub1\data1\dummy\second\third1\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub1\data1\dummy\second\third2\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub1\data2\dummy\second\third3\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub1\data2\dummy\second\third4\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub2\data3\dummy\second\third5\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub2\data3\dummy\second\third6\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub2\data4\dummy\second\third7\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub2\data4\dummy\second\third8\Nvidia.bk2"));
        }
コード例 #2
0
        public void WrongPattern()
        {
            //Set constants
            const string pattern = @"C:\Temp\v*id**eos\Nvidia.bk2";

            //Set Mocks
            var directoryBrowser = MockRepository.GenerateMock <IDirectoryBrowser>();

            //Run test
            var businessRule = new PathPatternTranslator(directoryBrowser);

            businessRule.GetPathFromPattern(pattern);
        }
コード例 #3
0
        public void PatternWoNavigation()
        {
            //Set constants
            const string pattern = @"C:\Temp\videos\Nvidia.bk2";

            //Set Mocks
            var directoryBrowser = MockRepository.GenerateMock <IDirectoryBrowser>();

            //Run test
            var businessRule = new PathPatternTranslator(directoryBrowser);
            var result       = businessRule.GetPathFromPattern(pattern).ToList();

            //Validate
            directoryBrowser.VerifyAllExpectations();
            Assert.AreEqual(1, result.Count);
            Assert.AreEqual(pattern, result.First());
        }
コード例 #4
0
        public void PatternWtNavigation()
        {
            //Set constants
            const string pattern = @"C:\Temp\videos\*\Nvidia.bk2";

            //Set Mocks
            var directoryBrowser = MockRepository.GenerateMock <IDirectoryBrowser>();

            directoryBrowser.Expect(x => x.GetSubDirectories(Arg <string> .Matches(y => y == @"C:\Temp\videos"))).Return(new[] { @"C:\Temp\videos\sub1", @"C:\Temp\videos\sub2" });

            //Run test
            var businessRule = new PathPatternTranslator(directoryBrowser);
            var result       = businessRule.GetPathFromPattern(pattern).ToList();

            //Validate
            directoryBrowser.VerifyAllExpectations();
            Assert.AreEqual(2, result.Count);
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub1\Nvidia.bk2"));
            Assert.IsTrue(result.Contains(@"C:\Temp\videos\sub2\Nvidia.bk2"));
        }
コード例 #5
0
 public IntroductionActivationService(FileAndFolderRenamer fileAndFolderRenamer, PathPatternTranslator pathPatternTranslator)
 {
     _fileAndFolderRenamer  = fileAndFolderRenamer;
     _pathPatternTranslator = pathPatternTranslator;
 }