public void setUp() { _bus = MockRepository.GenerateMock <IMessageBus>(); _fsService = new FakeFileSystemService(); _cache = new FakeCache(); _crawler = new ProjectCrawler(_cache, _fsService, _bus); }
private void crawlFolder(string watchFolder) { var fsService = _services.Locate <IFileSystemService>(); var cache = _services.Locate <ICache>(); var bus = _services.Locate <IMessageBus>(); var cacheCrawler = new ProjectCrawler(cache, fsService, bus); cacheCrawler.Crawl(watchFolder); }
public async Task ParseCsproj_Success(string csprojFileName) { var projectLocation = await DummyProject.Generate("TestProject"); var crawler = new ProjectCrawler(); var dotnetProject = await crawler.ParseCsproj(Path.Combine(projectLocation, csprojFileName)); await DummyProject.Clean("TestProject"); Assert.Equal("TestProject", dotnetProject.Name); Assert.Equal("Microsoft.NET.Sdk.Web", dotnetProject.ProjectSdk); }
public void ContinuousLettersMatch_Should_RankHigher() { var query = "asd"; var projects = @"AppleSauceDriver,AsdSomething".Split(',') .Select(x => new ProjectDirectory($@"D:\code\lib\{x}", x, "c", "c#")) .OrderBy(x => x.RootDirectoryName); var results = ProjectCrawler.RankedMatch(projects, query); var topResult = results.FirstOrDefault(); Assert.AreEqual(topResult.Project.Name, "AsdSomething"); }
public MainWindowViewModel() { var config = ServiceProvider.GetService <AppConfig>(); _projectDirectories = ProjectCrawler.Scan(config.RootDirectories).ToArray(); LauncherCommands = config.Commands; SearchCommand = ReactiveCommand.CreateFromTask <string, List <ProjectMatchResult> >(SearchAsync); SearchCommand.ThrownExceptions.Subscribe(); SearchCommand.ToPropertyEx(this, x => x.FilteredProjectDirectories); ExecuteLauncherCommand = ReactiveCommand.CreateFromTask <object[]>(LaunchAsync); ExecuteLauncherCommand.ThrownExceptions.Subscribe(); this.WhenAnyValue(x => x.SearchTerm) .Throttle(TimeSpan.FromSeconds(0.25)) .InvokeCommand(SearchCommand); }
public async Task <List <ProjectMatchResult> > SearchAsync(string searchTerm) => ProjectCrawler.RankedMatch(_projectDirectories, searchTerm).ToList();