chore: save current workspace progress
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
$root = Join-Path $PSScriptRoot '..'
|
||||
$readmePath = Join-Path $root 'ParkrobTrajplanner\PathSmoothing\README.md'
|
||||
$demoPath = Join-Path $root 'ParkrobTrajplanner\PathSmoothing\Test\PathSmoothingComparisonDemo.cs'
|
||||
$runnerPath = Join-Path $PSScriptRoot 'run_path_smoothing_comparison.ps1'
|
||||
|
||||
function Assert-True($actual, [string]$message) {
|
||||
if (-not $actual) { throw $message }
|
||||
}
|
||||
|
||||
Assert-True (Test-Path -LiteralPath $readmePath) 'Path smoothing README is missing.'
|
||||
Assert-True (Test-Path -LiteralPath $demoPath) 'Path smoothing comparison demo is missing.'
|
||||
Assert-True (Test-Path -LiteralPath $runnerPath) 'Path smoothing comparison batch runner is missing.'
|
||||
|
||||
$readme = Get-Content -Raw -Encoding UTF8 $readmePath
|
||||
foreach ($section in @(
|
||||
'Module Overview',
|
||||
'File Structure',
|
||||
'Smoothing Data Flow',
|
||||
'Result Status and Publication Rules',
|
||||
'Coordinates and Units',
|
||||
'Minimal Call Example',
|
||||
'Detailed Usage Guide',
|
||||
'Fixture Reports and Visualization',
|
||||
'Common Errors',
|
||||
'First-Version Limits')) {
|
||||
Assert-True $readme.Contains($section) "README must contain section: $section"
|
||||
}
|
||||
foreach ($requiredText in @(
|
||||
'Local G2',
|
||||
'MinimumClearanceReserveMeters',
|
||||
'PathSmoothingService',
|
||||
'Complete',
|
||||
'PartialImprovement',
|
||||
'NotNeeded',
|
||||
'Unchanged',
|
||||
'SimSun',
|
||||
'Times New Roman',
|
||||
'01-coarse-path-overview',
|
||||
'02-all-paths-comparison',
|
||||
'03-local-g2-overview',
|
||||
'04-curvature-comparison',
|
||||
'05-local-g2-diagnostic-candidate')) {
|
||||
Assert-True $readme.Contains($requiredText) "README must document: $requiredText"
|
||||
}
|
||||
|
||||
$demo = Get-Content -Raw -Encoding UTF8 $demoPath
|
||||
foreach ($requiredText in @(
|
||||
'PathSmoothingComparisonDemo',
|
||||
'PathSmoothingService',
|
||||
'PathSmoothingComparisonService',
|
||||
'SmoothingReportExporter',
|
||||
'SmoothingScenarioFactory',
|
||||
'PathSmoothingStatus.Complete',
|
||||
'PathSmoothingStatus.PartialImprovement',
|
||||
'PathSmoothingStatus.NotNeeded',
|
||||
'PathSmoothingStatus.Unchanged')) {
|
||||
Assert-True $demo.Contains($requiredText) "Demo must use: $requiredText"
|
||||
}
|
||||
|
||||
$runner = Get-Content -Raw -Encoding UTF8 $runnerPath
|
||||
Assert-True ($runner -match '\[switch\]\$FixtureOnly') 'Batch runner must offer -FixtureOnly.'
|
||||
Assert-True $runner.Contains('obj\path_smoothing_reports') 'Batch runner must write reports below ClumsyPilot/obj/path_smoothing_reports.'
|
||||
Assert-True $runner.Contains('--export-fixtures') 'Batch runner must export all eight fast fixtures by default.'
|
||||
Assert-True ($runner -notmatch 'ParkrobTrajplanner\\PathSmoothing\\.*\.(svg|png|csv)') 'Batch runner must never write report files below source directories.'
|
||||
|
||||
Write-Output 'Path smoothing LocalG2 documentation checks passed.'
|
||||
Reference in New Issue
Block a user