const {generateApprovalObserverScript} = require('../out/observer-script'); let s = generateApprovalObserverScript(18080); // Extract the regex strings let junkMatch = s.match(/JUNK_CODE_RE\s*=\s*(\/[^;]+)/); let promptMatch = s.match(/PROMPT_ONLY_RE\s*=\s*(\/[^;]+)/); console.log('JUNK_CODE_RE:', junkMatch[1].substring(0, 100)); console.log('PROMPT_ONLY_RE:', promptMatch[1]); // Use eval to construct the actual regexes let JUNK = eval(junkMatch[1]); let PROMPT = eval(promptMatch[1]); let tests = [ ['\u276f gravity_control > ', 'prompt only (no command)'], ['\u276f extension > ', 'prompt only (extension)'], ['\u276f gravity_control > $logFile = Join-Path $env:USERPROFILE', 'PS var assignment'], ['\u276f extension > npm.cmd run compile', 'npm compile'], ['\u276f gravity_control > Start-Sleep 12', 'Start-Sleep'], ['\u276f gravity_control > git add -A; git commit -m "test"', 'git commit'], ['\u276f gravity_control > node -e "const {gen}=require()"', 'node with require'], ['\u276f gravity_control > Get-Content file.txt', 'Get-Content'], ['\u276f gravity_control > npm.cmd version patch', 'npm version'], ['function test() { return 1; }', 'JS function (should be JUNK)'], ['const x = require("fs")', 'JS const (should be JUNK)'], ['import { foo } from "bar"', 'JS import (should be JUNK)'], ]; console.log('\n=== CODE ELEMENT FILTER ANALYSIS ==='); for (let [text, desc] of tests) { let isJunk = JUNK.test(text); let isPrompt = PROMPT.test(text.trim()); let junkPart = isJunk ? text.match(JUNK)[0] : null; let status; if (isPrompt) status = 'SKIP-PROMPT'; else if (isJunk) status = 'SKIP-JUNK (' + junkPart + ')'; else status = 'PASS'; let isBug = (isJunk || isPrompt) && text.indexOf('\u276f') !== -1 && text.trim().length > 25; console.log((isBug ? 'BUG ' : ' ') + status.padEnd(40) + ' | ' + desc); }