From 05a6d6f05e4c73b83f0fd0c5555b5de4ae593345 Mon Sep 17 00:00:00 2001 From: Chris Barber Date: Tue, 16 Jul 2024 02:32:02 -0500 Subject: [PATCH] Brute force --- test/get.test.ts | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/test/get.test.ts b/test/get.test.ts index 2a84b5a..2d3d1b6 100644 --- a/test/get.test.ts +++ b/test/get.test.ts @@ -2,6 +2,7 @@ import fs from 'node:fs'; import { describe, expect, it } from 'vitest'; import winreglib from '../src/index.js'; const { spawnSync } = require('node:child_process'); +import { spawn } from 'node:child_process'; import snooplogg from 'snooplogg'; const { log } = snooplogg('test:winreglib'); @@ -96,15 +97,29 @@ describe('get()', () => { expect(value).toBeGreaterThanOrEqual(0); }); - it('should get an 64-bit integer value', () => { - spawnSync( - 'reg', - [ - 'query', - 'HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\Diagnostics\\DiagTrack\\TraceManager' - ], - { stdio: 'inherit' } - ); + it('should get an 64-bit integer value', async () => { + await new Promise(resolve => { + const child = spawn( + 'reg', + ['query', 'HKLM\\Software\\Microsoft\\Windows\\CurrentVersion', '/s'], + { stdio: 'pipe' } + ); + let buffer = ''; + child.stdout.on('data', data => { + buffer += data.toString(); + }); + child.on('close', () => { + const chunks = buffer.split('\n\n'); + for (const chunk of chunks) { + if (chunk.includes('REG_QWORD')) { + console.log('-'.repeat(80)); + console.log(chunk); + console.log('-'.repeat(80)); + } + } + resolve(); + }); + }); const value = winreglib.get( 'HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\Diagnostics\\DiagTrack\\TraceManager', 'diagStartTime'