using System; using System.IO; using System.Linq; using Paca.App; using Paca.App.Core; using Paca.Browser.Tabs; using Paca.Tests.Infrastructure; using Xunit; namespace Paca.Tests.Browser; public class ChromeParityMilestone12Tests { [Fact] public void UpdateAddressSuggestions_일반_검색어_입력시_상단에_검색제안_항목이_생성된다() { using var sta = StaDispatcher.Start(); WpfTestApp.Ensure(sta.Dispatcher); sta.Invoke(() => { var dataDir = Path.Combine(Path.GetTempPath(), $"vd_omni_sugg_{Guid.NewGuid():N}"); Environment.SetEnvironmentVariable("VD_DATA_DIR", dataDir); try { var win = new MainWindow(); win.AddressBox.Focus(); win.UpdateSuggestions("dotnet testing", ignoreFocus: true); var items = win.AddressSuggestions.ItemsSource as System.Collections.IEnumerable; Assert.NotNull(items); var list = items.Cast().ToList(); Assert.NotEmpty(list); var top = list.First(); Assert.Contains("\uE721", top.Title); Assert.Contains("dotnet testing", top.Title); Assert.Contains("검색", top.Title); Assert.Contains("dotnet+testing", top.Url); } finally { try { if (Directory.Exists(dataDir)) Directory.Delete(dataDir, true); } catch { } } }); } [Fact] public void UpdateAddressSuggestions_키워드_접두_g_입력시_Google_검색_제안이_생성된다() { using var sta = StaDispatcher.Start(); WpfTestApp.Ensure(sta.Dispatcher); sta.Invoke(() => { var dataDir = Path.Combine(Path.GetTempPath(), $"vd_omni_g_{Guid.NewGuid():N}"); Environment.SetEnvironmentVariable("VD_DATA_DIR", dataDir); try { var win = new MainWindow(); win.AddressBox.Focus(); win.UpdateSuggestions("g rust async", ignoreFocus: true); var items = win.AddressSuggestions.ItemsSource as System.Collections.IEnumerable; Assert.NotNull(items); var list = items.Cast().ToList(); Assert.NotEmpty(list); var top = list.First(); Assert.Contains("\uE721", top.Title); Assert.Contains("Google", top.Title); Assert.Contains("google.com", top.Url); } finally { try { if (Directory.Exists(dataDir)) Directory.Delete(dataDir, true); } catch { } } }); } }