mirror of
https://github.com/Flow-Launcher/Flow.Launcher.git
synced 2026-03-11 08:54:32 +00:00
Add test for directory search query string and method
This commit is contained in:
parent
26f0ce2778
commit
f4ae5badf5
3 changed files with 29 additions and 1 deletions
|
|
@ -24,6 +24,21 @@ namespace Flow.Launcher.Test.Plugins
|
||||||
$"Actual: {result}{Environment.NewLine}");
|
$"Actual: {result}{Environment.NewLine}");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestCase("C:\\Dropbox", "SELECT TOP 100 System.FileName, System.ItemPathDisplay FROM SystemIndex WHERE directory='file:C:\\Dropbox'")]
|
||||||
|
public void GivenWindowsIndexSearch_WhenSearchTypeIsSearchTopFolderLevel_ThenQueryShouldUseExpectedString(string folderPath, string expectedString)
|
||||||
|
{
|
||||||
|
// Given
|
||||||
|
var queryConstructor = new QueryConstructor(new Settings());
|
||||||
|
|
||||||
|
//When
|
||||||
|
var queryString = queryConstructor.QueryForTopLevelDirectorySearch(folderPath);
|
||||||
|
|
||||||
|
Assert.IsTrue(queryString == expectedString,
|
||||||
|
$"Expected QueryWhereRestrictions string: {expectedString}{Environment.NewLine} " +
|
||||||
|
$"Actual string was: {queryString}{Environment.NewLine}");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void GivenWindowsIndexSearch_WhenSearchAllFoldersAndFiles_ThenQueryWhereRestrictionsShouldUseScopeString() { }
|
public void GivenWindowsIndexSearch_WhenSearchAllFoldersAndFiles_ThenQueryWhereRestrictionsShouldUseScopeString() { }
|
||||||
|
|
||||||
public void GivenWindowsIndexSearch_WhenReturnedNilAndIsNotIndexed_ThenSearchMethodShouldContinueDirectoryInfoClassSearch() { }
|
public void GivenWindowsIndexSearch_WhenReturnedNilAndIsNotIndexed_ThenSearchMethodShouldContinueDirectoryInfoClassSearch() { }
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,10 @@
|
||||||
<OutputPath>..\..\Output\Release\Plugins\Flow.Launcher.Explorer</OutputPath>
|
<OutputPath>..\..\Output\Release\Plugins\Flow.Launcher.Explorer</OutputPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="tlbimp-Microsoft.Search.Interop" Version="1.0.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\Flow.Launcher.Infrastructure\Flow.Launcher.Infrastructure.csproj" />
|
<ProjectReference Include="..\..\Flow.Launcher.Infrastructure\Flow.Launcher.Infrastructure.csproj" />
|
||||||
<ProjectReference Include="..\..\Flow.Launcher.Plugin\Flow.Launcher.Plugin.csproj" />
|
<ProjectReference Include="..\..\Flow.Launcher.Plugin\Flow.Launcher.Plugin.csproj" />
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using Microsoft.Search.Interop;
|
using Microsoft.Search.Interop;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
@ -51,5 +51,14 @@ namespace Flow.Launcher.Plugin.Explorer.Search.WindowsIndex
|
||||||
return $"directory='file:{path}'";
|
return $"directory='file:{path}'";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public string QueryForTopLevelDirectorySearch(string folderPath)
|
||||||
|
{
|
||||||
|
string query = "SELECT TOP " + _settings.MaxResult + $" {CreateBaseQuery().QuerySelectColumns} FROM {SystemIndex} WHERE ";
|
||||||
|
|
||||||
|
query += QueryWhereRestrictionsForTopLevelDirectorySearch(folderPath);
|
||||||
|
|
||||||
|
return query;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue