51 lines
1.9 KiB
C#
51 lines
1.9 KiB
C#
using System;
|
|
using System.Linq;
|
|
using Paca.Browser.Tabs;
|
|
using Xunit;
|
|
|
|
namespace Paca.Tests.Browser;
|
|
|
|
public class ChromeTabHoverCardTests
|
|
{
|
|
[Theory]
|
|
[InlineData("https://www.youtube.com/watch?v=dQw4w9WgXcQ", "youtube.com")]
|
|
[InlineData("https://news.ycombinator.com/news", "news.ycombinator.com")]
|
|
[InlineData("http://localhost:52100/api/tabs", "localhost:52100")]
|
|
[InlineData("paca://settings", "paca://settings")]
|
|
[InlineData("about:blank", "about:blank")]
|
|
public void TabPreview_ExtractsCleanDomain(string url, string expectedDomain)
|
|
{
|
|
var preview = new TabPreview("테스트 탭", url, IsSuspended: false, IsAudioPlaying: false, IsLocked: false, IsReader: false, IsMuted: false);
|
|
Assert.Equal(expectedDomain, preview.Domain);
|
|
}
|
|
|
|
[Fact]
|
|
public void TabPreview_Badges_IncludesMemorySavedAndMuted()
|
|
{
|
|
var preview = new TabPreview("대기 탭", "https://example.com", IsSuspended: true, IsAudioPlaying: false, IsLocked: false, IsReader: false, IsMuted: true);
|
|
var badges = preview.GetBadges();
|
|
|
|
Assert.Contains("메모리 절약됨", badges);
|
|
Assert.Contains("음소거됨", badges);
|
|
}
|
|
|
|
[Fact]
|
|
public void TabPreview_Badges_IncludesAudioPlaying()
|
|
{
|
|
var preview = new TabPreview("음악 탭", "https://youtube.com", IsSuspended: false, IsAudioPlaying: true, IsLocked: false, IsReader: false, IsMuted: false);
|
|
var badges = preview.GetBadges();
|
|
|
|
Assert.Contains("오디오 재생 중", badges);
|
|
Assert.DoesNotContain("음소거됨", badges);
|
|
}
|
|
|
|
[Fact]
|
|
public void TabPreview_BuildTooltipText_FormatsWithDomainAndBadges()
|
|
{
|
|
var preview = new TabPreview("네이버", "https://www.naver.com", IsSuspended: false, IsAudioPlaying: false, IsLocked: false, IsReader: false, IsMuted: false);
|
|
var text = preview.BuildTooltipText();
|
|
|
|
Assert.Contains("네이버", text);
|
|
Assert.Contains("naver.com", text);
|
|
}
|
|
}
|