Files
jiapuapp/tests/g09-all-states-visual-contract.ps1
T

25 lines
1.5 KiB
PowerShell

$ErrorActionPreference = 'Stop'
$root = Split-Path -Parent $PSScriptRoot
$page = Get-Content -LiteralPath (Join-Path $root 'pages/genealogy/g09-my-applications.vue') -Raw -Encoding utf8
$rules = @(
'(?s)\.application-intro text:last-child\s*\{[^}]*font-size:\s*clamp\(15px, 24rpx, 18px\);',
'(?s)\.application-card__time\s*\{[^}]*font-size:\s*clamp\(14px, 23rpx, 17px\);',
'(?s)\.application-card__relation\s*\{[^}]*font-size:\s*clamp\(15px, 24rpx, 18px\);',
'(?s)\.application-card__status\s*\{[^}]*font-size:\s*clamp\(15px, 25rpx, 18px\);',
'(?s)\.application-card__hint\s*\{[^}]*font-size:\s*clamp\(14px, 23rpx, 17px\);',
'(?s)\.application-card__action\s*\{[^}]*font-size:\s*clamp\(14px, 23rpx, 17px\);',
'(?s)\.application-card__action\s*\{[^}]*white-space:\s*nowrap;',
'(?s)\.application-card\s*\{[^}]*@include\s+adaptive\.adaptive-genealogy-list-card;[^}]*min-height:\s*210rpx;[^}]*margin-bottom:\s*12rpx;',
'(?s)\.application-card__body\s*\{[^}]*min-height:\s*174rpx;[^}]*gap:\s*8rpx 14rpx;[^}]*padding:\s*26rpx 28rpx 22rpx 40rpx;',
'(?s)\.application-state-card__copy text:last-child\s*\{[^}]*font-size:\s*clamp\(15px, 24rpx, 18px\);'
)
if ($page -match '(?s)\.application-card\s*\{[^}]*background:\s*url\("/static/assets/modules/genealogy/transparent/list-slip-frame\.png"\)[^}]*100%\s+100%') {
throw 'G09 application card must not stretch the complete frame asset to 100% 100%'
}
foreach ($rule in $rules) {
if ($page -notmatch $rule) { throw "G09 readable visual rule missing: $rule" }
}
Write-Output 'G09-ALL-STATES-VISUAL-CONTRACT PASS'