48 lines
1.9 KiB
C#
48 lines
1.9 KiB
C#
using System;
|
|
using System.IO;
|
|
using Paca.Browser;
|
|
using Paca.Tests.Infrastructure;
|
|
using Xunit;
|
|
|
|
namespace Paca.Tests.Browser;
|
|
|
|
public class ChromeParityMilestone18Tests
|
|
{
|
|
[Fact]
|
|
public void GetSuggestions_chrome_스킴_입력시_내부페이지_전체_제안()
|
|
{
|
|
var suggestions = ChromeInternalUrlRouter.GetSuggestions("chrome://");
|
|
Assert.NotEmpty(suggestions);
|
|
Assert.Contains(suggestions, s => s.Url == "chrome://downloads");
|
|
Assert.Contains(suggestions, s => s.Url == "chrome://history");
|
|
Assert.Contains(suggestions, s => s.Url == "chrome://settings");
|
|
Assert.Contains(suggestions, s => s.Url == "chrome://bookmarks");
|
|
}
|
|
|
|
[Fact]
|
|
public void GetSuggestions_키워드_부분일치_정상_필터링()
|
|
{
|
|
var suggestions = ChromeInternalUrlRouter.GetSuggestions("chrome://down");
|
|
Assert.Single(suggestions);
|
|
Assert.Equal("chrome://downloads", suggestions[0].Url);
|
|
Assert.Contains("다운로드", suggestions[0].Title);
|
|
|
|
var pacaSuggestions = ChromeInternalUrlRouter.GetSuggestions("paca://set");
|
|
Assert.Contains(pacaSuggestions, s => s.Url == "paca://settings");
|
|
Assert.Contains(pacaSuggestions, s => s.Url == "paca://settings/content");
|
|
|
|
var pacaContentSuggestions = ChromeInternalUrlRouter.GetSuggestions("paca://settings/c");
|
|
Assert.Single(pacaContentSuggestions);
|
|
Assert.Equal("paca://settings/content", pacaContentSuggestions[0].Url);
|
|
}
|
|
|
|
[Fact]
|
|
public void MainWindow_UpdateSuggestions_내부페이지_제안_통합_검증()
|
|
{
|
|
var csPath = SourceTree.AppPath("MainWindow.xaml.cs");
|
|
Assert.True(File.Exists(csPath), "MainWindow.xaml.cs 파일이 존재해야 합니다.");
|
|
var code = File.ReadAllText(csPath);
|
|
|
|
Assert.Contains("ChromeInternalUrlRouter.GetSuggestions", code);
|
|
}
|
|
}
|