feat(ads/seo/release): v1.2.0 with live Google Ads, isolated ad profile, ads.txt, and SEO/AEO/GEO optimization
This commit is contained in:
parent
a88aafa1e5
commit
0e568f1f0a
975 changed files with 130593 additions and 16783 deletions
|
|
@ -139,4 +139,75 @@ public class MobileCoreFeaturesGateTests
|
|||
// 네트워크 단절로 멈췄던 항목이 자동으로 재개되어야 함
|
||||
Assert.Equal(MobileQueueStatus.Downloading, item.Status);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate169_MobileDiscoveryEngine_ExpandedPlatforms_Audit()
|
||||
{
|
||||
// 모바일 8대 스피드 다이얼 및 주요 스트리밍 플랫폼 확장 감지 감사
|
||||
var chzzk = MobileDiscoveryEngine.DetectPlatform("https://chzzk.naver.com/live/12345");
|
||||
Assert.Equal("CHZZK", chzzk.PlatformName);
|
||||
Assert.True(chzzk.IsSupported);
|
||||
|
||||
var soop = MobileDiscoveryEngine.DetectPlatform("https://m.sooplive.co.kr/play/abcdef");
|
||||
Assert.Equal("SOOP", soop.PlatformName);
|
||||
Assert.True(soop.IsSupported);
|
||||
|
||||
var afreeca = MobileDiscoveryEngine.DetectPlatform("https://play.afreecatv.com/streamer/999");
|
||||
Assert.Equal("SOOP", afreeca.PlatformName);
|
||||
Assert.True(afreeca.IsSupported);
|
||||
|
||||
var twitch = MobileDiscoveryEngine.DetectPlatform("https://m.twitch.tv/streamer");
|
||||
Assert.Equal("Twitch", twitch.PlatformName);
|
||||
Assert.True(twitch.IsSupported);
|
||||
|
||||
var instagram = MobileDiscoveryEngine.DetectPlatform("https://www.instagram.com/reel/C12345/");
|
||||
Assert.Equal("Instagram", instagram.PlatformName);
|
||||
Assert.True(instagram.IsSupported);
|
||||
|
||||
var tiktok = MobileDiscoveryEngine.DetectPlatform("https://www.tiktok.com/@user/video/1234567");
|
||||
Assert.Equal("TikTok", tiktok.PlatformName);
|
||||
Assert.True(tiktok.IsSupported);
|
||||
|
||||
var tiktokShort = MobileDiscoveryEngine.DetectPlatform("https://vt.tiktok.com/ZS12345/");
|
||||
Assert.Equal("TikTok", tiktokShort.PlatformName);
|
||||
Assert.True(tiktokShort.IsSupported);
|
||||
|
||||
var reddit = MobileDiscoveryEngine.DetectPlatform("https://www.reddit.com/r/funny/comments/xyz/clip/");
|
||||
Assert.Equal("Reddit", reddit.PlatformName);
|
||||
Assert.True(reddit.IsSupported);
|
||||
|
||||
var vreddit = MobileDiscoveryEngine.DetectPlatform("https://v.redd.it/abcdef123");
|
||||
Assert.Equal("Reddit", vreddit.PlatformName);
|
||||
Assert.True(vreddit.IsSupported);
|
||||
|
||||
var naverTv = MobileDiscoveryEngine.DetectPlatform("https://tv.naver.com/v/123456");
|
||||
Assert.Equal("Naver TV", naverTv.PlatformName);
|
||||
Assert.True(naverTv.IsSupported);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate170_MobileDiscoveryEngine_DirectMedia_QueryString_And_Extensions_Audit()
|
||||
{
|
||||
// 쿼리 스트링, 프래그먼트, 추가 확장자(.mkv 등) 포함 미디어 감지 감사
|
||||
var mp4WithQuery = MobileDiscoveryEngine.DetectPlatform("https://cdn.example.com/stream.mp4?token=abc123&expire=9999");
|
||||
Assert.Equal("Direct Media", mp4WithQuery.PlatformName);
|
||||
Assert.True(mp4WithQuery.IsSupported);
|
||||
|
||||
var webmWithFragment = MobileDiscoveryEngine.DetectPlatform("https://cdn.example.com/clip.webm?key=val#t=10");
|
||||
Assert.Equal("Direct Media", webmWithFragment.PlatformName);
|
||||
Assert.True(webmWithFragment.IsSupported);
|
||||
|
||||
var mkvMedia = MobileDiscoveryEngine.DetectPlatform("https://cdn.example.com/movie.mkv");
|
||||
Assert.Equal("Direct Media", mkvMedia.PlatformName);
|
||||
Assert.True(mkvMedia.IsSupported);
|
||||
|
||||
var hlsWithAuth = MobileDiscoveryEngine.DetectPlatform("https://cdn.example.com/playlist.m3u8?auth=token123");
|
||||
Assert.Equal("HLS Stream", hlsWithAuth.PlatformName);
|
||||
Assert.True(hlsWithAuth.IsSupported);
|
||||
|
||||
var dashWithSession = MobileDiscoveryEngine.DetectPlatform("https://cdn.example.com/manifest.mpd?session=xyz");
|
||||
Assert.Equal("DASH Stream", dashWithSession.PlatformName);
|
||||
Assert.True(dashWithSession.IsSupported);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue