public void CreateInitialFolderAndFilesTest_ProvidedDexterHomePath_CreatesBinDirectoryInDexterHome() { try { // Given DexterConfig dexterConfig = new DexterConfig(); string dexterHomePath = DexterCSTestUtil.TestingDirectory + @"\" + "DexterHome"; dexterConfig.DexterHome = dexterHomePath; // When dexterConfig.CreateInitialFolderAndFiles(); foreach (string s in Directory.GetDirectories(dexterHomePath)) { Console.WriteLine(s); } // Then Assert.IsTrue(Directory.GetDirectories(dexterHomePath) .Any(x => new DirectoryInfo(x).Name == "bin")); } finally { DexterCSTestUtil.ClearTestingDirectory(); } }
public void IsAnalysisAllowedFileTest_MultipleExtensionsSupported_FileWithNotSupportedExtension_ReturnsFalse() { // Given DexterConfig dexterConfig = new DexterConfig(); dexterConfig.AddSupportedFileExtensions(new string[] { "c", "cpp", "java" }); // When bool result = dexterConfig.IsFileSupportedForAnalysis("file.cs"); // Then Assert.IsFalse(result); }
public void IsAnalysisAllowedFileTest_OneExtensionSupported_FileWithSupportedExtensions_ReturnsTrue() { // Given DexterConfig dexterConfig = new DexterConfig(); dexterConfig.AddSupportedFileExtensions(new string[] { "cpp" }); // When bool result = dexterConfig.IsFileSupportedForAnalysis("file.cpp"); // Then Assert.IsTrue(result); }
public void ChangeDexterHomeTest_SimplePath_ChangesDexterHomePath() { // Given string dexterHomePath = @"C:\NewDexterHomePath"; DexterConfig dexterConfig = new DexterConfig(); // When dexterConfig.ChangeDexterHome(dexterHomePath); // Then Assert.AreEqual( Path.GetFullPath(dexterHomePath), Path.GetFullPath(dexterConfig.DexterHome)); }
public void CreateInitialFolderAndFilesTest_ProvidedDexterHomePath_CreatesNonEmptyDirectory() { try { // Given DexterConfig dexterConfig = new DexterConfig(); string dexterHomePath = DexterCSTestUtil.TestingDirectory + @"\" + "DexterHome"; dexterConfig.DexterHome = dexterHomePath; // When dexterConfig.CreateInitialFolderAndFiles(); // Then Assert.IsTrue(Directory.GetFileSystemEntries(dexterHomePath).Any()); } finally { DexterCSTestUtil.ClearTestingDirectory(); } }
public IIndexer LoadIndexer(DexterConfig config) { var type = TypeResolver.ResolveType <IIndexer>(config.Indexer.Type.Assembly, config.Indexer.Type.Type); var constructors = type.GetConstructors(); if (!constructors.Any()) { return((IIndexer)Activator.CreateInstance(type, config.Indexer.Settings)); } var constructor = constructors.FirstOrDefault(); var parameters = constructor.GetParameters(); if (!parameters.Any()) { return((IIndexer)Activator.CreateInstance(type, config.Indexer.Settings)); } var typedSettings = config.Indexer.Settings.ToObject(parameters.First().ParameterType); return((IIndexer)Activator.CreateInstance(type, typedSettings)); }
public IndexStrategyResolver(DexterConfig config) { Config = config; PropertyIndexStrategies = new Dictionary <string, IPropertyIndexStrategy>(); ContentIndexStrategies = new Dictionary <string, IContentIndexStrategy>(); }