Skip to content

Commit 5410200

Browse files
authored
Merge pull request #383 from DannyBen/add/strings-schema-test
Add strings schema test and separate schema job
2 parents e8c685a + 89572f0 commit 5410200

File tree

2 files changed

+48
-3
lines changed

2 files changed

+48
-3
lines changed

.github/workflows/test.yml

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,6 @@ jobs:
5252
- name: Install shfmt
5353
run: rush get shfmt
5454

55-
- name: Install check-jsonschema
56-
run: rush get check-jsonschema
57-
5855
# libyaml needed for Ruby's YAML library
5956
- name: Install OS dependencies
6057
run: sudo apt-get -y install libyaml-dev
@@ -67,11 +64,50 @@ jobs:
6764

6865
- name: Generate all subjects
6966
run: bundle exec run examples regen
67+
7068
- name: Run shellcheck tests
7169
run: bundle exec run shellcheck
70+
7271
- name: Run shfmt tests
7372
run: bundle exec run shfmt
73+
74+
json_schema:
75+
name: Validate JSON schemas
76+
77+
runs-on: ubuntu-latest
78+
79+
steps:
80+
- name: Checkout code
81+
uses: actions/checkout@v3
82+
83+
# Rush needed for easy installation of check-jsonschema
84+
- name: Install rush
85+
run: curl -Ls http://get.dannyb.co/rush/setup | bash
86+
87+
- name: Connect rush repo
88+
run: rush clone dannyben --shallow --default
89+
90+
- name: Install check-jsonschema
91+
run: rush get check-jsonschema
92+
93+
# libyaml needed for Ruby's YAML library
94+
- name: Install OS dependencies
95+
run: sudo apt-get -y install libyaml-dev
96+
97+
- name: Setup Ruby
98+
uses: ruby/setup-ruby@v1
99+
with:
100+
ruby-version: '3.1'
101+
bundler-cache: true
102+
103+
- name: Generate all subjects
104+
run: bundle exec run examples regen
105+
74106
- name: Run bashly schema tests
75107
run: bundle exec run schema examples
108+
76109
- name: Run settings schema tests
77110
run: bundle exec run schema settings
111+
112+
- name: Run strings schema tests
113+
run: bundle exec run schema strings

support/runfile/schema.runfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,12 @@ action :settings do
1919
success = system command
2020
exit 1 unless success
2121
end
22+
23+
help 'Test the strings schema against the default strings template'
24+
action :strings do
25+
file = 'lib/bashly/libraries/strings/strings.yml'
26+
command = "check-jsonschema --schemafile schemas/strings.json #{file}"
27+
say "\n$ check-jsonschema bb`#{file}`"
28+
success = system command
29+
exit 1 unless success
30+
end

0 commit comments

Comments
 (0)