Skip to content

Latest commit

 

History

History
72 lines (58 loc) · 1.92 KB

File metadata and controls

72 lines (58 loc) · 1.92 KB

Testing Guide

Prerequisites

  • Windows 10/11 (x64)
  • .NET 9.0 Desktop Runtime
  • Visual Studio 2026 (for building)
  • Inno Setup 6 (for installer)

Build Testing

build.bat              # Build everything
build.bat verify       # Build + run self-checks

Manual Testing Checklist

Installation

  • Installer requires admin privileges
  • Engine scheduled task created (schtasks /query /tn "OathkeeperEngine")
  • Files deployed to C:\ProgramData\Oathkeeper
  • Desktop shortcut created
  • Engine starts at logon

Website Blocking

  • Add website → hosts file updated with 127.0.0.1 domain.com
  • Website blocked in browser
  • Remove website → hosts file cleaned, DNS flushed
  • Website accessible again

Application Blocking

  • Add application → process_blocklist.txt updated
  • Application cannot launch
  • Remove application → application can launch

Keyword Blocking

  • Add keyword → keyword_blocklist.txt updated
  • Window with keyword in title is closed
  • Remove keyword → window stays open

Punishments

  • Toggle punishment on/off in Settings
  • Cut Internet → hosts file blocks all traffic
  • Re-enable Internet → hosts file restored
  • Keyboard freeze → keyboard unresponsive
  • Screen freeze → overlay appears
  • Flash → brief flash effect
  • Drunk Mouse → mouse moves erratically

Uninstallation

  • Password required to uninstall
  • Engine process stopped
  • Scheduled task removed
  • Desktop shortcut removed
  • Hosts file restored
  • All files deleted

Automated Testing

Run the PowerShell verification script:

.\cook.ps1 verify

This runs 6 self-checks:

  1. No personal usernames in source code
  2. No hardcoded bypass hashes in README
  3. No Russian Roulette references
  4. ServiceMain and WinMain entry points exist
  5. Installer has Uninstallable=no
  6. Engine deploys to {sys}