Set-Location $PSScriptRoot/website-nikola
$ProgressPreference = "SilentlyContinue"
$ErrorActionPreference = "Stop"
$py = $Env:NIKOLA_PY
if ($null -eq $py) {
  Write-Error '$Env:NIKOLA_PY is not set'
  Exit 1
}
function test($d, $c, $o) {
  $sum = 0
  for ($i = 0; $i -lt 11; $i++) {
    if ($d) { Remove-Item -Recurse -Force .doit* -ErrorAction SilentlyContinue }
    if ($c) { Remove-Item -Recurse -Force cache -ErrorAction SilentlyContinue }
    if ($o) { Remove-Item -Recurse -Force output -ErrorAction SilentlyContinue }
    if ($i -eq 0) {
      Write-Host "Warmup run:"
      & $py -m nikola build
      Write-Host "Warmup run complete"
      continue
    }
    $result = (Measure-Command { & $py -m nikola build -q }).TotalMilliseconds
    Write-Host $result
    $sum += $result
  }
  $avg = $sum / 10.0
  Write-Host "Average: $avg"
}
Write-Host "==="
Write-Host "Test: clean"
test $true $true $true
Write-Host "==="
Write-Host "Test: no output"
test $false $false $true
Write-Host "==="
Write-Host "Test: nothing to do"
test $false $false $false