-
Notifications
You must be signed in to change notification settings - Fork 0
132 lines (115 loc) · 3.53 KB
/
test.yml
File metadata and controls
132 lines (115 loc) · 3.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
name: TaskTracker Tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
unit_test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run unit tests
run: npm test
lint_check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run lint check
run: npm run lint:check
cli_test:
runs-on: ubuntu-latest
needs: unit_test
steps:
- uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Test CLI commands
run: |
# Initialize TaskTracker
node bin/tt init
# Test journal commands
node bin/tt j "Test journal entry"
node bin/tt j "Test decision" --type decision
node bin/tt j "Test with tags" --tags test,ci
# Test context generation
node bin/tt c
node bin/tt cf 1
# Test PRD commands
node bin/tt prd "Test project requirements"
node bin/tt prd-show
# Test journal show
node bin/tt journal-show
node bin/tt journal-show --type decision
echo "✅ All CLI commands executed successfully"
documentation_check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check documentation structure
run: |
# Verify main documentation files exist
if [ ! -f "README.md" ]; then
echo "Missing README.md"
exit 1
fi
# Check for package.json
if [ ! -f "package.json" ]; then
echo "Missing package.json"
exit 1
fi
echo "✅ Documentation structure verified"
structure_check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Verify repository structure
run: |
# Check for core lib structure
for dir in lib/core lib/commands; do
if [ ! -d "$dir" ]; then
echo "Missing directory: $dir"
exit 1
fi
done
# Check for command registry
if [ ! -f "lib/commands/index.js" ]; then
echo "Missing command registry"
exit 1
fi
# Check for core modules
core_modules=("unified-config-manager.js" "formatting.js" "cli-parser.js" "command-registry.js")
for module in "${core_modules[@]}"; do
if [ ! -f "lib/core/$module" ]; then
echo "Missing core module: $module"
exit 1
fi
done
# Check for main commands
commands=("journal.js" "prd.js" "context.js" "context-v2.js" "help.js" "init.js")
for cmd in "${commands[@]}"; do
if [ ! -f "lib/commands/$cmd" ]; then
echo "Missing command: $cmd"
exit 1
fi
done
echo "✅ Repository structure verified"