示例#1
0
        public void ApplyingUsageRulesToAssemblyFoldersReturnsCorrectAssemblies()
        {
            //include dir2
            //include browser file directly
            //include textfile directly

            IList <UsageRule> usageRules = new List <UsageRule>
            {
                new UsageRule {
                    MatchType = UsageRuleNameMatch.DirectoryFullName, Name = Dir2, UsageRuleFunction = UsageRuleFunction.Include
                },
                new UsageRule {
                    MatchType = UsageRuleNameMatch.FullName, Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Include
                },
                new UsageRule {
                    MatchType = UsageRuleNameMatch.FullName, Name = Textfile, UsageRuleFunction = UsageRuleFunction.Include
                },
            };

            IList <string> assemblyFolders = new List <string>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            IList <Assembly> assemblies = assemblyApplicator.ApplyUsageRulesToFolders(usageRules, assemblyFolders);

            Assert.AreEqual(2, assemblies.Count);
            IList <string> assemblyNames = assemblies.Select(x => x.FullName).ToList();

            Assert.Contains(cabinet.FullName, assemblyNames.ToArray());
            Assert.Contains(browser.FullName, assemblyNames.ToArray());

            //include file
            //exclude file

            //find all assemblies in given folder and add to list

            //search all usages for all includes that are valid files
            //check file is a valid assembly and add to list

            //search all usages for all excludes that are valid files
            //remove assembly from list


            //"C:\Windows\System32\browser.dll"
            //"C:\Windows\System32\cabinet.dll"
            //"C:\Windows\System32\netbios.dll"
        }
示例#2
0
        public void ApplyUsageRulesToFoldersToFindAssemblies()
        {
            //this can fail due to restrictions or depenendcies... need to look at using MEF to load them all.
//            Assembly s = Assembly.LoadFrom(@"C:\hoh_code\Bailey\bailey\trunk\source\Bailey.DAL\bin\Debug\Bailey.Common.dll");
//            Assembly.UnsafeLoadFrom(@"C:\Windows\System32\browser.dll");

            IList <string> assemblyFolders = new List <string>()
            {
                Dir4, Dir8, Dir9
            };
            IList <Assembly> assemblies = new List <Assembly>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.FindAllAssembiesForGivenFolders(assemblyFolders, assemblies);

            Assert.AreEqual(1, assemblies.Count);
            IList <string> assemblyNames = assemblies.Select(x => x.FullName).ToList();

            Assert.Contains(cabinet.FullName, assemblyNames.ToArray());
        }
示例#3
0
        public void RemoveAllExplicityExcludedAssemblies()
        {
            //TODO some how (probably using MEF) load an assembly
            IList <Assembly> assemblies = new List <Assembly>(); //load an assembly into list (browser)

            Assert.AreEqual(1, assemblies.Count);

            IList <UsageRule> usageRules = new List <UsageRule>
            {
                new UsageRule {
                    Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Exclude
                },
            };


            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.RemoveAllExplicityExcludedAssemblies(usageRules, assemblies);

            Assert.AreEqual(0, assemblies.Count);
        }
示例#4
0
        public void FindAllAssembliesSpecifiedInUsageRules()
        {
            IList <UsageRule> usageRules = new List <UsageRule>
            {
                new UsageRule {
                    MatchType = UsageRuleNameMatch.FullName, Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Include
                },
                new UsageRule {
                    MatchType = UsageRuleNameMatch.FullName, Name = Textfile, UsageRuleFunction = UsageRuleFunction.Include
                },
            };

            IList <Assembly> assemblies = new List <Assembly>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.FindAllAssembliesSpecifiedInUsageRules(usageRules, assemblies);

            Assert.AreEqual(1, assemblies.Count);
            IList <string> assemblyNames = assemblies.Select(x => x.FullName).ToList();

            Assert.Contains(browser.FullName, assemblyNames.ToArray());
        }
        public void ApplyingUsageRulesToAssemblyFoldersReturnsCorrectAssemblies()
        {
            //include dir2
            //include browser file directly
            //include textfile directly

            IList<UsageRule> usageRules = new List<UsageRule>
                    {
                      new UsageRule { MatchType = UsageRuleNameMatch.DirectoryFullName, Name = Dir2, UsageRuleFunction = UsageRuleFunction.Include },
                      new UsageRule { MatchType = UsageRuleNameMatch.FullName, Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Include },
                      new UsageRule { MatchType = UsageRuleNameMatch.FullName, Name = Textfile, UsageRuleFunction = UsageRuleFunction.Include },
                    };

            IList<string> assemblyFolders = new List<string>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            IList<Assembly> assemblies = assemblyApplicator.ApplyUsageRulesToFolders(usageRules, assemblyFolders);

            Assert.AreEqual(2, assemblies.Count);
            IList<string> assemblyNames = assemblies.Select(x => x.FullName).ToList();

            Assert.Contains(cabinet.FullName, assemblyNames.ToArray());
            Assert.Contains(browser.FullName, assemblyNames.ToArray());

            //include file
            //exclude file

            //find all assemblies in given folder and add to list

            //search all usages for all includes that are valid files
            //check file is a valid assembly and add to list

            //search all usages for all excludes that are valid files
            //remove assembly from list

            //"C:\Windows\System32\browser.dll"
            //"C:\Windows\System32\cabinet.dll"
            //"C:\Windows\System32\netbios.dll"
        }
        public void ApplyUsageRulesToFoldersToFindAssemblies()
        {
            //this can fail due to restrictions or depenendcies... need to look at using MEF to load them all.
            //            Assembly s = Assembly.LoadFrom(@"C:\hoh_code\Bailey\bailey\trunk\source\Bailey.DAL\bin\Debug\Bailey.Common.dll");
            //            Assembly.UnsafeLoadFrom(@"C:\Windows\System32\browser.dll");

            IList<string> assemblyFolders = new List<string>() { Dir4, Dir8, Dir9 };
            IList<Assembly> assemblies = new List<Assembly>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.FindAllAssembiesForGivenFolders(assemblyFolders, assemblies);

            Assert.AreEqual(1, assemblies.Count);
            IList<string> assemblyNames = assemblies.Select(x => x.FullName).ToList();
            Assert.Contains(cabinet.FullName, assemblyNames.ToArray());
        }
        public void RemoveAllExplicityExcludedAssemblies()
        {
            //TODO some how (probably using MEF) load an assembly
            IList<Assembly> assemblies = new List<Assembly>(); //load an assembly into list (browser)

            Assert.AreEqual(1, assemblies.Count);

            IList<UsageRule> usageRules = new List<UsageRule>
                    {
                      new UsageRule { Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Exclude },
                    };

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.RemoveAllExplicityExcludedAssemblies(usageRules, assemblies);

            Assert.AreEqual(0, assemblies.Count);
        }
        public void FindAllAssembliesSpecifiedInUsageRules()
        {
            IList<UsageRule> usageRules = new List<UsageRule>
                    {
                      new UsageRule { MatchType = UsageRuleNameMatch.FullName, Name = browser.FullName, UsageRuleFunction = UsageRuleFunction.Include },
                      new UsageRule { MatchType = UsageRuleNameMatch.FullName, Name = Textfile, UsageRuleFunction = UsageRuleFunction.Include },
                    };

            IList<Assembly> assemblies = new List<Assembly>();

            AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator assemblyApplicator = new AssemblyLocator.UsageRules.UsageRuleAssemblyApplicator();
            assemblyApplicator.FindAllAssembliesSpecifiedInUsageRules(usageRules, assemblies);

            Assert.AreEqual(1, assemblies.Count);
            IList<string> assemblyNames = assemblies.Select(x => x.FullName).ToList();
            Assert.Contains(browser.FullName, assemblyNames.ToArray());
        }