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
66
tests/Paca.Tests/App/QuickCaptureHudGateTests.cs
Normal file
66
tests/Paca.Tests/App/QuickCaptureHudGateTests.cs
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
using System;
|
||||
using Paca.App.ViewModels;
|
||||
using Xunit;
|
||||
|
||||
namespace Paca.Tests.App;
|
||||
|
||||
public class QuickCaptureHudGateTests
|
||||
{
|
||||
[Fact]
|
||||
public void Gate223_QuickCaptureHudViewModel_Initializes_WithDetectedUrl_AndExtractsDomain()
|
||||
{
|
||||
var url = "https://www.youtube.com/watch?v=dQw4w9WgXcQ";
|
||||
var vm = new QuickCaptureHudViewModel(url);
|
||||
|
||||
Assert.Equal(url, vm.TargetUrl);
|
||||
Assert.Equal("youtube.com", vm.DomainLabel);
|
||||
Assert.Equal("mp4", vm.SelectedFormat);
|
||||
Assert.True(vm.IsVisible);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate224_QuickCaptureHudViewModel_DownloadCommand_TriggersOnDownloadRequested()
|
||||
{
|
||||
var url = "https://twitter.com/user/status/123456789";
|
||||
var vm = new QuickCaptureHudViewModel(url);
|
||||
|
||||
string? requestedUrl = null;
|
||||
string? requestedFormat = null;
|
||||
vm.DownloadRequested += (u, f) =>
|
||||
{
|
||||
requestedUrl = u;
|
||||
requestedFormat = f;
|
||||
};
|
||||
|
||||
vm.DownloadCommand.Execute(null);
|
||||
|
||||
Assert.Equal(url, requestedUrl);
|
||||
Assert.Equal("mp4", requestedFormat);
|
||||
Assert.False(vm.IsVisible); // Dismissed upon action
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate225_QuickCaptureHudViewModel_SendToPhoneCommand_TriggersOnSendToPhoneRequested()
|
||||
{
|
||||
var url = "https://instagram.com/reel/abcdef";
|
||||
var vm = new QuickCaptureHudViewModel(url);
|
||||
|
||||
string? sentUrl = null;
|
||||
vm.SendToPhoneRequested += u => sentUrl = u;
|
||||
|
||||
vm.SendToPhoneCommand.Execute(null);
|
||||
|
||||
Assert.Equal(url, sentUrl);
|
||||
Assert.False(vm.IsVisible); // Dismissed upon action
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Gate226_QuickCaptureHudViewModel_Dismiss_ClosesHud()
|
||||
{
|
||||
var vm = new QuickCaptureHudViewModel("https://test.com/video");
|
||||
Assert.True(vm.IsVisible);
|
||||
|
||||
vm.DismissCommand.Execute(null);
|
||||
Assert.False(vm.IsVisible);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue