Both hostnames served the same sitemap and feed, so the sitemap submitted for
paca.chanpaca.net listed only mediabrowser.chanpaca.net URLs and Naver rejected
it as not matching the verified domain. Switch every canonical URL, Open Graph
tag, hreflang, JSON-LD, sitemap, RSS feed, llms files, app share link, package
manifest and promo UTM to paca.chanpaca.net, then resubmit the corrected Naver
and Search Console sitemaps. All 2,757 tests pass.
💘 Generated with Crush
Assisted-by: Crush:deepseek-v4.1-flash
53 lines
1.9 KiB
C#
53 lines
1.9 KiB
C#
using System;
|
|
using Paca.Core.Social;
|
|
using Xunit;
|
|
|
|
namespace Paca.Tests.Core;
|
|
|
|
/// <summary>
|
|
/// 제품 내 확산(공유) 루프 게이트: 다운로드 완료 화면에서 결과물을 공유하면
|
|
/// UTM 이 붙은 랜딩 URL 이 함께 퍼져 유입 루프가 닫히는지 검증한다.
|
|
/// </summary>
|
|
public class ShareLoopGateTests
|
|
{
|
|
[Fact]
|
|
public void Gate219_ShareCardBuilder_BuildsUtmTaggedLandingUrlAndShareText()
|
|
{
|
|
var url = ShareCardBuilder.BuildShareUrl("share_card");
|
|
Assert.Contains("https://paca.chanpaca.net/", url);
|
|
Assert.Contains("utm_source=paca_app", url);
|
|
Assert.Contains("utm_medium=share_card", url);
|
|
|
|
var text = ShareCardBuilder.BuildShareText("Big Buck Bunny.mp4");
|
|
Assert.Contains("Big Buck Bunny.mp4", text);
|
|
Assert.Contains(ShareCardBuilder.BuildShareUrl(), text);
|
|
Assert.Contains("미디어 브라우저", text);
|
|
}
|
|
|
|
[Fact]
|
|
public void Gate219_ShareCardBuilder_HandlesEmptyTitleAndBuildsQrTitle()
|
|
{
|
|
var text = ShareCardBuilder.BuildShareText(" ");
|
|
Assert.Contains("https://paca.chanpaca.net/", text);
|
|
Assert.DoesNotContain("''", text);
|
|
|
|
var qrTitle = ShareCardBuilder.BuildQrTitle("");
|
|
Assert.Contains("Paca", qrTitle);
|
|
|
|
var qrTitle2 = ShareCardBuilder.BuildQrTitle("clip.mp4");
|
|
Assert.Contains("clip.mp4", qrTitle2);
|
|
}
|
|
|
|
[Fact]
|
|
public void Gate219_DownloadShelf_DeclaresShareButtonWiredToShareCardBuilder()
|
|
{
|
|
var xaml = SourceTree.MainWindowXaml;
|
|
Assert.Contains("DownloadShelfShareBtn", xaml);
|
|
Assert.Contains("Click=\"DownloadShelfShareBtn_Click\"", xaml);
|
|
Assert.Contains("AutomationProperties.Name=\"다운로드 결과 공유\"", xaml);
|
|
|
|
var cs = SourceTree.MainWindowCs;
|
|
Assert.Contains("DownloadShelfShareBtn_Click", cs);
|
|
Assert.Contains("ShareCardBuilder", cs);
|
|
}
|
|
}
|