vibecodingmachine-core 1.0.2 → 2025.11.2-7.1239
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc +13 -13
- package/README.md +28 -28
- package/__tests__/applescript-manager-claude-fix.test.js +286 -286
- package/__tests__/requirement-2-auto-start-looping.test.js +69 -69
- package/__tests__/requirement-3-auto-start-looping.test.js +69 -69
- package/__tests__/requirement-4-auto-start-looping.test.js +69 -69
- package/__tests__/requirement-6-auto-start-looping.test.js +73 -73
- package/__tests__/requirement-7-status-tracking.test.js +332 -332
- package/jest.config.js +18 -18
- package/jest.setup.js +12 -12
- package/package.json +48 -48
- package/src/auth/access-denied.html +119 -119
- package/src/auth/shared-auth-storage.js +230 -230
- package/src/autonomous-mode/feature-implementer.cjs +70 -70
- package/src/autonomous-mode/feature-implementer.js +425 -425
- package/src/chat-management/chat-manager.cjs +71 -71
- package/src/chat-management/chat-manager.js +342 -342
- package/src/ide-integration/__tests__/applescript-manager-thread-closure.test.js +227 -227
- package/src/ide-integration/aider-cli-manager.cjs +850 -850
- package/src/ide-integration/applescript-manager.cjs +1088 -1088
- package/src/ide-integration/applescript-manager.js +2802 -2802
- package/src/ide-integration/applescript-utils.js +306 -306
- package/src/ide-integration/cdp-manager.cjs +221 -221
- package/src/ide-integration/cdp-manager.js +321 -321
- package/src/ide-integration/claude-code-cli-manager.cjs +301 -301
- package/src/ide-integration/cline-cli-manager.cjs +2252 -2252
- package/src/ide-integration/continue-cli-manager.js +431 -431
- package/src/ide-integration/provider-manager.cjs +354 -354
- package/src/ide-integration/quota-detector.cjs +34 -34
- package/src/ide-integration/quota-detector.js +349 -349
- package/src/ide-integration/windows-automation-manager.js +262 -262
- package/src/index.cjs +47 -43
- package/src/index.js +17 -17
- package/src/llm/direct-llm-manager.cjs +609 -609
- package/src/ui/ButtonComponents.js +247 -247
- package/src/ui/ChatInterface.js +499 -499
- package/src/ui/StateManager.js +259 -259
- package/src/utils/audit-logger.cjs +116 -116
- package/src/utils/config-helpers.cjs +94 -94
- package/src/utils/config-helpers.js +94 -94
- package/src/utils/electron-update-checker.js +113 -85
- package/src/utils/gcloud-auth.cjs +394 -394
- package/src/utils/logger.cjs +193 -193
- package/src/utils/logger.js +191 -191
- package/src/utils/repo-helpers.cjs +120 -120
- package/src/utils/repo-helpers.js +120 -120
- package/src/utils/requirement-helpers.js +432 -432
- package/src/utils/update-checker.js +227 -167
- package/src/utils/version-checker.js +169 -0
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test suite for Requirement 2: Auto Start and Looping Test
|
|
3
|
-
*
|
|
4
|
-
* This test verifies that Requirement 2 is properly structured and completed.
|
|
5
|
-
* Requirement 2 is a test requirement that requires no actual implementation,
|
|
6
|
-
* just reporting that it has been done.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
const fs = require('fs');
|
|
10
|
-
const path = require('path');
|
|
11
|
-
|
|
12
|
-
describe('Requirement 2: Auto Start and Looping Test', () => {
|
|
13
|
-
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
-
|
|
15
|
-
test('should have requirements file with proper structure', () => {
|
|
16
|
-
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
-
|
|
18
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
-
|
|
20
|
-
// Check for required sections
|
|
21
|
-
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
-
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
-
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
-
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
test('should show Requirement 2 as completed in Verified by AI section', () => {
|
|
28
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
-
|
|
30
|
-
// Check that Requirement 2 is in the Verified by AI section
|
|
31
|
-
expect(content).toContain('**Requirement 2: Auto Start and Looping Test**');
|
|
32
|
-
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
test('should not have Requirement 2 in not yet started section', () => {
|
|
36
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
-
|
|
38
|
-
// Check that Requirement 2 is not in the not yet started section
|
|
39
|
-
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
-
expect(notYetStartedSection).not.toContain('Requirement 2:');
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
test('should show current status as ready for next requirement', () => {
|
|
44
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
-
|
|
46
|
-
// Check current status
|
|
47
|
-
expect(content).toContain('Requirement 2 completed and verified. Ready for next requirement.');
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
test('should have no current requirements in progress', () => {
|
|
51
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
-
|
|
53
|
-
// Check that no requirements are in progress
|
|
54
|
-
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
test('should have proper completion details for Requirement 2', () => {
|
|
58
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
-
|
|
60
|
-
// Check for detailed completion information
|
|
61
|
-
expect(content).toContain('2025-10-03: **Requirement 2: Auto Start and Looping Test**');
|
|
62
|
-
expect(content).toContain('Requirement Management');
|
|
63
|
-
expect(content).toContain('Status Tracking');
|
|
64
|
-
expect(content).toContain('Test Implementation');
|
|
65
|
-
expect(content).toContain('Visual Verification');
|
|
66
|
-
expect(content).toContain('Workflow Compliance');
|
|
67
|
-
expect(content).toContain('Completion Reporting');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Test suite for Requirement 2: Auto Start and Looping Test
|
|
3
|
+
*
|
|
4
|
+
* This test verifies that Requirement 2 is properly structured and completed.
|
|
5
|
+
* Requirement 2 is a test requirement that requires no actual implementation,
|
|
6
|
+
* just reporting that it has been done.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const fs = require('fs');
|
|
10
|
+
const path = require('path');
|
|
11
|
+
|
|
12
|
+
describe('Requirement 2: Auto Start and Looping Test', () => {
|
|
13
|
+
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
+
|
|
15
|
+
test('should have requirements file with proper structure', () => {
|
|
16
|
+
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
+
|
|
18
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
+
|
|
20
|
+
// Check for required sections
|
|
21
|
+
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
+
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
+
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
+
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
test('should show Requirement 2 as completed in Verified by AI section', () => {
|
|
28
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
+
|
|
30
|
+
// Check that Requirement 2 is in the Verified by AI section
|
|
31
|
+
expect(content).toContain('**Requirement 2: Auto Start and Looping Test**');
|
|
32
|
+
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
test('should not have Requirement 2 in not yet started section', () => {
|
|
36
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
+
|
|
38
|
+
// Check that Requirement 2 is not in the not yet started section
|
|
39
|
+
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
+
expect(notYetStartedSection).not.toContain('Requirement 2:');
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
test('should show current status as ready for next requirement', () => {
|
|
44
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
+
|
|
46
|
+
// Check current status
|
|
47
|
+
expect(content).toContain('Requirement 2 completed and verified. Ready for next requirement.');
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
test('should have no current requirements in progress', () => {
|
|
51
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
+
|
|
53
|
+
// Check that no requirements are in progress
|
|
54
|
+
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test('should have proper completion details for Requirement 2', () => {
|
|
58
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
+
|
|
60
|
+
// Check for detailed completion information
|
|
61
|
+
expect(content).toContain('2025-10-03: **Requirement 2: Auto Start and Looping Test**');
|
|
62
|
+
expect(content).toContain('Requirement Management');
|
|
63
|
+
expect(content).toContain('Status Tracking');
|
|
64
|
+
expect(content).toContain('Test Implementation');
|
|
65
|
+
expect(content).toContain('Visual Verification');
|
|
66
|
+
expect(content).toContain('Workflow Compliance');
|
|
67
|
+
expect(content).toContain('Completion Reporting');
|
|
68
|
+
});
|
|
69
|
+
});
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test suite for Requirement 3: Auto Start and Looping Test
|
|
3
|
-
*
|
|
4
|
-
* This test verifies that Requirement 3 is properly structured and completed.
|
|
5
|
-
* Requirement 3 is a test requirement that requires no actual implementation,
|
|
6
|
-
* just reporting that it has been done.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
const fs = require('fs');
|
|
10
|
-
const path = require('path');
|
|
11
|
-
|
|
12
|
-
describe('Requirement 3: Auto Start and Looping Test', () => {
|
|
13
|
-
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
-
|
|
15
|
-
test('should have requirements file with proper structure', () => {
|
|
16
|
-
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
-
|
|
18
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
-
|
|
20
|
-
// Check for required sections
|
|
21
|
-
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
-
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
-
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
-
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
test('should show Requirement 3 as completed in Verified by AI section', () => {
|
|
28
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
-
|
|
30
|
-
// Check that Requirement 3 is in the Verified by AI section
|
|
31
|
-
expect(content).toContain('**Requirement 3: Auto Start and Looping Test**');
|
|
32
|
-
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
test('should not have Requirement 3 in not yet started section', () => {
|
|
36
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
-
|
|
38
|
-
// Check that Requirement 3 is not in the not yet started section
|
|
39
|
-
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
-
expect(notYetStartedSection).not.toContain('Requirement 3:');
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
test('should show current status as ready for next requirement', () => {
|
|
44
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
-
|
|
46
|
-
// Check current status
|
|
47
|
-
expect(content).toContain('Requirement 3 completed and verified. Ready for next requirement.');
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
test('should have no current requirements in progress', () => {
|
|
51
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
-
|
|
53
|
-
// Check that no requirements are in progress
|
|
54
|
-
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
test('should have proper completion details for Requirement 3', () => {
|
|
58
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
-
|
|
60
|
-
// Check for detailed completion information
|
|
61
|
-
expect(content).toContain('2025-10-03: **Requirement 3: Auto Start and Looping Test**');
|
|
62
|
-
expect(content).toContain('Requirement Management');
|
|
63
|
-
expect(content).toContain('Status Tracking');
|
|
64
|
-
expect(content).toContain('Test Implementation');
|
|
65
|
-
expect(content).toContain('Visual Verification');
|
|
66
|
-
expect(content).toContain('Workflow Compliance');
|
|
67
|
-
expect(content).toContain('Completion Reporting');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Test suite for Requirement 3: Auto Start and Looping Test
|
|
3
|
+
*
|
|
4
|
+
* This test verifies that Requirement 3 is properly structured and completed.
|
|
5
|
+
* Requirement 3 is a test requirement that requires no actual implementation,
|
|
6
|
+
* just reporting that it has been done.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const fs = require('fs');
|
|
10
|
+
const path = require('path');
|
|
11
|
+
|
|
12
|
+
describe('Requirement 3: Auto Start and Looping Test', () => {
|
|
13
|
+
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
+
|
|
15
|
+
test('should have requirements file with proper structure', () => {
|
|
16
|
+
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
+
|
|
18
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
+
|
|
20
|
+
// Check for required sections
|
|
21
|
+
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
+
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
+
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
+
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
test('should show Requirement 3 as completed in Verified by AI section', () => {
|
|
28
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
+
|
|
30
|
+
// Check that Requirement 3 is in the Verified by AI section
|
|
31
|
+
expect(content).toContain('**Requirement 3: Auto Start and Looping Test**');
|
|
32
|
+
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
test('should not have Requirement 3 in not yet started section', () => {
|
|
36
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
+
|
|
38
|
+
// Check that Requirement 3 is not in the not yet started section
|
|
39
|
+
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
+
expect(notYetStartedSection).not.toContain('Requirement 3:');
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
test('should show current status as ready for next requirement', () => {
|
|
44
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
+
|
|
46
|
+
// Check current status
|
|
47
|
+
expect(content).toContain('Requirement 3 completed and verified. Ready for next requirement.');
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
test('should have no current requirements in progress', () => {
|
|
51
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
+
|
|
53
|
+
// Check that no requirements are in progress
|
|
54
|
+
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test('should have proper completion details for Requirement 3', () => {
|
|
58
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
+
|
|
60
|
+
// Check for detailed completion information
|
|
61
|
+
expect(content).toContain('2025-10-03: **Requirement 3: Auto Start and Looping Test**');
|
|
62
|
+
expect(content).toContain('Requirement Management');
|
|
63
|
+
expect(content).toContain('Status Tracking');
|
|
64
|
+
expect(content).toContain('Test Implementation');
|
|
65
|
+
expect(content).toContain('Visual Verification');
|
|
66
|
+
expect(content).toContain('Workflow Compliance');
|
|
67
|
+
expect(content).toContain('Completion Reporting');
|
|
68
|
+
});
|
|
69
|
+
});
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Test suite for Requirement 4: Auto Start and Looping Test
|
|
3
|
-
*
|
|
4
|
-
* This test verifies that Requirement 4 is properly structured and completed.
|
|
5
|
-
* Requirement 4 is a test requirement that requires no actual implementation,
|
|
6
|
-
* just reporting that it has been done.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
const fs = require('fs');
|
|
10
|
-
const path = require('path');
|
|
11
|
-
|
|
12
|
-
describe('Requirement 4: Auto Start and Looping Test', () => {
|
|
13
|
-
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
-
|
|
15
|
-
test('should have requirements file with proper structure', () => {
|
|
16
|
-
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
-
|
|
18
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
-
|
|
20
|
-
// Check for required sections
|
|
21
|
-
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
-
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
-
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
-
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
test('should show Requirement 4 as completed in Verified by AI section', () => {
|
|
28
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
-
|
|
30
|
-
// Check that Requirement 4 is in the Verified by AI section
|
|
31
|
-
expect(content).toContain('**Requirement 4: Auto Start and Looping Test**');
|
|
32
|
-
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
test('should not have Requirement 4 in not yet started section', () => {
|
|
36
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
-
|
|
38
|
-
// Check that Requirement 4 is not in the not yet started section
|
|
39
|
-
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
-
expect(notYetStartedSection).not.toContain('Requirement 4:');
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
test('should show current status as ready for next requirement', () => {
|
|
44
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
-
|
|
46
|
-
// Check current status
|
|
47
|
-
expect(content).toContain('Requirement 4 completed and verified. Ready for next requirement.');
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
test('should have no current requirements in progress', () => {
|
|
51
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
-
|
|
53
|
-
// Check that no requirements are in progress
|
|
54
|
-
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
test('should have proper completion details for Requirement 4', () => {
|
|
58
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
-
|
|
60
|
-
// Check for detailed completion information
|
|
61
|
-
expect(content).toContain('2025-10-03: **Requirement 4: Auto Start and Looping Test**');
|
|
62
|
-
expect(content).toContain('Requirement Management');
|
|
63
|
-
expect(content).toContain('Status Tracking');
|
|
64
|
-
expect(content).toContain('Test Implementation');
|
|
65
|
-
expect(content).toContain('Visual Verification');
|
|
66
|
-
expect(content).toContain('Workflow Compliance');
|
|
67
|
-
expect(content).toContain('Completion Reporting');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Test suite for Requirement 4: Auto Start and Looping Test
|
|
3
|
+
*
|
|
4
|
+
* This test verifies that Requirement 4 is properly structured and completed.
|
|
5
|
+
* Requirement 4 is a test requirement that requires no actual implementation,
|
|
6
|
+
* just reporting that it has been done.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const fs = require('fs');
|
|
10
|
+
const path = require('path');
|
|
11
|
+
|
|
12
|
+
describe('Requirement 4: Auto Start and Looping Test', () => {
|
|
13
|
+
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
+
|
|
15
|
+
test('should have requirements file with proper structure', () => {
|
|
16
|
+
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
+
|
|
18
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
+
|
|
20
|
+
// Check for required sections
|
|
21
|
+
expect(content).toContain('## 🚦 Current Status');
|
|
22
|
+
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
23
|
+
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
24
|
+
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
test('should show Requirement 4 as completed in Verified by AI section', () => {
|
|
28
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
29
|
+
|
|
30
|
+
// Check that Requirement 4 is in the Verified by AI section
|
|
31
|
+
expect(content).toContain('**Requirement 4: Auto Start and Looping Test**');
|
|
32
|
+
expect(content).toContain('Successfully completed test requirement for Auto Start and looping functionality');
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
test('should not have Requirement 4 in not yet started section', () => {
|
|
36
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
37
|
+
|
|
38
|
+
// Check that Requirement 4 is not in the not yet started section
|
|
39
|
+
const notYetStartedSection = content.split('## ⏳ Requirements not yet started')[1];
|
|
40
|
+
expect(notYetStartedSection).not.toContain('Requirement 4:');
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
test('should show current status as ready for next requirement', () => {
|
|
44
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
45
|
+
|
|
46
|
+
// Check current status
|
|
47
|
+
expect(content).toContain('Requirement 4 completed and verified. Ready for next requirement.');
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
test('should have no current requirements in progress', () => {
|
|
51
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
52
|
+
|
|
53
|
+
// Check that no requirements are in progress
|
|
54
|
+
expect(content).toContain('- No current requirements in progress.');
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test('should have proper completion details for Requirement 4', () => {
|
|
58
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
59
|
+
|
|
60
|
+
// Check for detailed completion information
|
|
61
|
+
expect(content).toContain('2025-10-03: **Requirement 4: Auto Start and Looping Test**');
|
|
62
|
+
expect(content).toContain('Requirement Management');
|
|
63
|
+
expect(content).toContain('Status Tracking');
|
|
64
|
+
expect(content).toContain('Test Implementation');
|
|
65
|
+
expect(content).toContain('Visual Verification');
|
|
66
|
+
expect(content).toContain('Workflow Compliance');
|
|
67
|
+
expect(content).toContain('Completion Reporting');
|
|
68
|
+
});
|
|
69
|
+
});
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Requirement 6: Auto Start and Looping Test
|
|
3
|
-
*
|
|
4
|
-
* This is a test for Auto Start and looping. Nothing to do but report that this has been done.
|
|
5
|
-
*
|
|
6
|
-
* Test suite to verify Requirement 6 completion and status tracking.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
const fs = require('fs');
|
|
10
|
-
const path = require('path');
|
|
11
|
-
|
|
12
|
-
describe('Requirement 6: Auto Start and Looping Test', () => {
|
|
13
|
-
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
-
|
|
15
|
-
test('should have Requirement 6 in the requirements file', () => {
|
|
16
|
-
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
-
|
|
18
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
-
expect(content).toContain('Requirement 6: This is a test for Auto Start and looping');
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
test('should verify Requirement 6 structure and content', () => {
|
|
23
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
24
|
-
|
|
25
|
-
// Check that Requirement 6 is properly formatted
|
|
26
|
-
expect(content).toMatch(/Requirement 6: This is a test for Auto Start and looping\.\s*Nothing to do but report that this has been done\./);
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
test('should verify requirements file has all required sections', () => {
|
|
30
|
-
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
31
|
-
|
|
32
|
-
// Check for all required sections
|
|
33
|
-
expect(content).toContain('## RESPONSE FROM LAST CHAT');
|
|
34
|
-
expect(content).toContain('## 🚦 Current Status');
|
|
35
|
-
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
36
|
-
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
37
|
-
expect(content).toContain('## ❓ Requirements needing manual feedback');
|
|
38
|
-
expect(content).toContain('## REJECTED by Human');
|
|
39
|
-
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
test('should verify Requirement 6 completion reporting capability', () => {
|
|
43
|
-
// This test verifies that we can properly report Requirement 6 as completed
|
|
44
|
-
const requirement6Description = 'Requirement 6: This is a test for Auto Start and looping. Nothing to do but report that this has been done.';
|
|
45
|
-
|
|
46
|
-
// Verify the requirement description is clear and actionable
|
|
47
|
-
expect(requirement6Description).toContain('Requirement 6');
|
|
48
|
-
expect(requirement6Description).toContain('Auto Start and looping');
|
|
49
|
-
expect(requirement6Description).toContain('Nothing to do but report that this has been done');
|
|
50
|
-
|
|
51
|
-
// This requirement is designed to test the completion reporting mechanism
|
|
52
|
-
expect(requirement6Description).toBeDefined();
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
test('should verify auto start and looping test mechanism', () => {
|
|
56
|
-
// This test verifies that the auto start and looping test mechanism is working
|
|
57
|
-
// by ensuring we can properly identify and process test requirements
|
|
58
|
-
|
|
59
|
-
const testRequirements = [
|
|
60
|
-
'Requirement 6: This is a test for Auto Start and looping. Nothing to do but report that this has been done.',
|
|
61
|
-
'Requirement 7: This is a test for Auto Start and looping. Nothing to do but report that this has been done.',
|
|
62
|
-
'Requirement 8: This is a test for Auto Start and looping. Nothing to do but report that this has been done.'
|
|
63
|
-
];
|
|
64
|
-
|
|
65
|
-
// Verify that test requirements follow the expected pattern
|
|
66
|
-
testRequirements.forEach(requirement => {
|
|
67
|
-
expect(requirement).toMatch(/Requirement \d+: This is a test for Auto Start and looping\.\s*Nothing to do but report that this has been done\./);
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
// Verify that Requirement 6 is part of this test sequence
|
|
71
|
-
expect(testRequirements[0]).toContain('Requirement 6');
|
|
72
|
-
});
|
|
73
|
-
});
|
|
1
|
+
/**
|
|
2
|
+
* Requirement 6: Auto Start and Looping Test
|
|
3
|
+
*
|
|
4
|
+
* This is a test for Auto Start and looping. Nothing to do but report that this has been done.
|
|
5
|
+
*
|
|
6
|
+
* Test suite to verify Requirement 6 completion and status tracking.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const fs = require('fs');
|
|
10
|
+
const path = require('path');
|
|
11
|
+
|
|
12
|
+
describe('Requirement 6: Auto Start and Looping Test', () => {
|
|
13
|
+
const requirementsPath = path.join(__dirname, '..', '..', '..', '.vibecodingmachine', 'REQUIREMENTS-Jesses-MacBook-Pro.local.md');
|
|
14
|
+
|
|
15
|
+
test('should have Requirement 6 in the requirements file', () => {
|
|
16
|
+
expect(fs.existsSync(requirementsPath)).toBe(true);
|
|
17
|
+
|
|
18
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
19
|
+
expect(content).toContain('Requirement 6: This is a test for Auto Start and looping');
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
test('should verify Requirement 6 structure and content', () => {
|
|
23
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
24
|
+
|
|
25
|
+
// Check that Requirement 6 is properly formatted
|
|
26
|
+
expect(content).toMatch(/Requirement 6: This is a test for Auto Start and looping\.\s*Nothing to do but report that this has been done\./);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
test('should verify requirements file has all required sections', () => {
|
|
30
|
+
const content = fs.readFileSync(requirementsPath, 'utf8');
|
|
31
|
+
|
|
32
|
+
// Check for all required sections
|
|
33
|
+
expect(content).toContain('## RESPONSE FROM LAST CHAT');
|
|
34
|
+
expect(content).toContain('## 🚦 Current Status');
|
|
35
|
+
expect(content).toContain('## 🔨 Current In Progress Requirement');
|
|
36
|
+
expect(content).toContain('## ⏳ Requirements not yet started');
|
|
37
|
+
expect(content).toContain('## ❓ Requirements needing manual feedback');
|
|
38
|
+
expect(content).toContain('## REJECTED by Human');
|
|
39
|
+
expect(content).toContain('## ✅ Verified by AI screenshot. Needs Human to Verify and move to CHANGELOG');
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
test('should verify Requirement 6 completion reporting capability', () => {
|
|
43
|
+
// This test verifies that we can properly report Requirement 6 as completed
|
|
44
|
+
const requirement6Description = 'Requirement 6: This is a test for Auto Start and looping. Nothing to do but report that this has been done.';
|
|
45
|
+
|
|
46
|
+
// Verify the requirement description is clear and actionable
|
|
47
|
+
expect(requirement6Description).toContain('Requirement 6');
|
|
48
|
+
expect(requirement6Description).toContain('Auto Start and looping');
|
|
49
|
+
expect(requirement6Description).toContain('Nothing to do but report that this has been done');
|
|
50
|
+
|
|
51
|
+
// This requirement is designed to test the completion reporting mechanism
|
|
52
|
+
expect(requirement6Description).toBeDefined();
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
test('should verify auto start and looping test mechanism', () => {
|
|
56
|
+
// This test verifies that the auto start and looping test mechanism is working
|
|
57
|
+
// by ensuring we can properly identify and process test requirements
|
|
58
|
+
|
|
59
|
+
const testRequirements = [
|
|
60
|
+
'Requirement 6: This is a test for Auto Start and looping. Nothing to do but report that this has been done.',
|
|
61
|
+
'Requirement 7: This is a test for Auto Start and looping. Nothing to do but report that this has been done.',
|
|
62
|
+
'Requirement 8: This is a test for Auto Start and looping. Nothing to do but report that this has been done.'
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
// Verify that test requirements follow the expected pattern
|
|
66
|
+
testRequirements.forEach(requirement => {
|
|
67
|
+
expect(requirement).toMatch(/Requirement \d+: This is a test for Auto Start and looping\.\s*Nothing to do but report that this has been done\./);
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
// Verify that Requirement 6 is part of this test sequence
|
|
71
|
+
expect(testRequirements[0]).toContain('Requirement 6');
|
|
72
|
+
});
|
|
73
|
+
});
|