guard-busted 0.1.2 → 1.0.0
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.
- checksums.yaml +4 -4
- data/.github/workflows/rspec.yml +29 -0
- data/.github/workflows/rubocop.yml +22 -0
- data/.github/workflows/rubygems.yml +32 -0
- data/.gitignore +2 -0
- data/.overcommit.yml +86 -0
- data/.overcommit_gems.rb +7 -0
- data/.overcommit_gems.rb.lock +42 -0
- data/.rubocop.yml +4 -0
- data/Gemfile.lock +57 -45
- data/Guardfile +4 -2
- data/README.md +10 -4
- data/bin/dev +69 -0
- data/bin/setup +19 -0
- data/guard-busted.gemspec +11 -7
- data/lib/guard/busted/notifier.rb +67 -0
- data/lib/guard/busted/options.rb +2 -2
- data/lib/guard/busted/runner.rb +49 -19
- data/lib/guard/busted/templates/Guardfile +1 -1
- data/lib/guard/busted/version.rb +3 -1
- data/lib/guard/busted.rb +10 -6
- metadata +92 -27
- data/.travis.yml +0 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 68c1f3fafa946d09a8e7d917ced98f9d93e122000a9ff08fb13dc28ea2775b18
|
|
4
|
+
data.tar.gz: 1215979a5c94ffdb8ead152f76f04b30e4460bad8877f1e6358417897a24c030
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 14823531aeff5f78870ee42e47f1b1fb333a37ad958fda6be2efe90a37c5b203035613c571d8413c770c36d89b0b23e0af775ea958f700ae2f51632d78ec5fc0
|
|
7
|
+
data.tar.gz: f8da8202dc0c7f0ccb3dd1019a12446314aa2bbe99720668471f8211b584d17582428d59c93600905741a2d9cd53a393ab0876fb933bc04d4641c67086592ff3
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: RSpec
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ master, develop ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
strategy:
|
|
14
|
+
matrix:
|
|
15
|
+
ruby-version: ['2.7', '3.0']
|
|
16
|
+
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v2
|
|
19
|
+
- name: Set up Ruby
|
|
20
|
+
uses: ruby/setup-ruby@v1
|
|
21
|
+
with:
|
|
22
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
23
|
+
bundler-cache: true
|
|
24
|
+
- name: Run tests
|
|
25
|
+
run: bundle exec rake
|
|
26
|
+
- name: Send test coverage report
|
|
27
|
+
uses: codecov/codecov-action@v2
|
|
28
|
+
with:
|
|
29
|
+
file: ./coverage/coverage.xml
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
name: Rubocop
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ master, develop ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
rubocop:
|
|
11
|
+
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v2
|
|
16
|
+
- name: Set up Ruby
|
|
17
|
+
uses: ruby/setup-ruby@v1
|
|
18
|
+
with:
|
|
19
|
+
ruby-version: '3.0'
|
|
20
|
+
bundler-cache: true
|
|
21
|
+
- name: Run rubocop
|
|
22
|
+
run: bundle exec rubocop
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
name: Rubygems
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
build:
|
|
9
|
+
name: Build + Publish
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
contents: read
|
|
13
|
+
packages: write
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v3
|
|
17
|
+
- name: Set up Ruby 3.0
|
|
18
|
+
uses: actions/setup-ruby@v1
|
|
19
|
+
with:
|
|
20
|
+
ruby-version: 3.0.x
|
|
21
|
+
|
|
22
|
+
- name: Publish to RubyGems
|
|
23
|
+
run: |
|
|
24
|
+
mkdir -p $HOME/.gem
|
|
25
|
+
touch $HOME/.gem/credentials
|
|
26
|
+
chmod 0600 $HOME/.gem/credentials
|
|
27
|
+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
|
28
|
+
gem build *.gemspec
|
|
29
|
+
gem push *.gem
|
|
30
|
+
env:
|
|
31
|
+
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
|
|
32
|
+
|
data/.gitignore
CHANGED
data/.overcommit.yml
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
gemfile: '.overcommit_gems.rb'
|
|
2
|
+
|
|
3
|
+
plugin_directory: '.git-hooks'
|
|
4
|
+
|
|
5
|
+
quiet: false
|
|
6
|
+
|
|
7
|
+
concurrency: '%{processors}'
|
|
8
|
+
|
|
9
|
+
verify_signatures: true
|
|
10
|
+
|
|
11
|
+
CommitMsg:
|
|
12
|
+
ALL:
|
|
13
|
+
requires_files: false
|
|
14
|
+
quiet: false
|
|
15
|
+
|
|
16
|
+
CapitalizedSubject:
|
|
17
|
+
enabled: false
|
|
18
|
+
|
|
19
|
+
EmptyMessage:
|
|
20
|
+
enabled: true
|
|
21
|
+
description: 'Check for empty commit message'
|
|
22
|
+
|
|
23
|
+
MessageFormat:
|
|
24
|
+
enabled: true
|
|
25
|
+
description: 'Check commit message matches expected pattern'
|
|
26
|
+
pattern: '\[(((#[0-9]+)(, (#[0-9]+))*)|(v[0-9]+(\.[0-9]+)*))\][ ](.+)(\n\n.+)?'
|
|
27
|
+
expected_pattern_message: '[#<Issue Id>|v<version>] <Commit Message Description>'
|
|
28
|
+
sample_message: '[#403] Fix a bug that crashes the system'
|
|
29
|
+
|
|
30
|
+
SingleLineSubject:
|
|
31
|
+
enabled: true
|
|
32
|
+
description: 'Check subject line'
|
|
33
|
+
|
|
34
|
+
TextWidth:
|
|
35
|
+
enabled: true
|
|
36
|
+
description: 'Check text width'
|
|
37
|
+
max_subject_width: 60
|
|
38
|
+
min_subject_width: 0
|
|
39
|
+
max_body_width: 72
|
|
40
|
+
|
|
41
|
+
TrailingPeriod:
|
|
42
|
+
enabled: true
|
|
43
|
+
description: 'Check for trailing periods in subject'
|
|
44
|
+
|
|
45
|
+
PreCommit:
|
|
46
|
+
ALL:
|
|
47
|
+
problem_on_unmodified_line: report
|
|
48
|
+
requires_files: true
|
|
49
|
+
required: false
|
|
50
|
+
quiet: false
|
|
51
|
+
|
|
52
|
+
RuboCop:
|
|
53
|
+
enabled: true
|
|
54
|
+
on_warn: fail
|
|
55
|
+
|
|
56
|
+
AuthorEmail:
|
|
57
|
+
enabled: true
|
|
58
|
+
description: 'Check author email'
|
|
59
|
+
requires_files: false
|
|
60
|
+
required: true
|
|
61
|
+
pattern: '^[^@]+@.*$'
|
|
62
|
+
|
|
63
|
+
AuthorName:
|
|
64
|
+
enabled: true
|
|
65
|
+
description: 'Check for author name'
|
|
66
|
+
requires_files: false
|
|
67
|
+
required: true
|
|
68
|
+
|
|
69
|
+
BrokenSymlinks:
|
|
70
|
+
enabled: true
|
|
71
|
+
description: 'Check for broken symlinks'
|
|
72
|
+
|
|
73
|
+
CaseConflicts:
|
|
74
|
+
enabled: true
|
|
75
|
+
description: 'Check for case-insensitivity conflicts'
|
|
76
|
+
|
|
77
|
+
FileSize:
|
|
78
|
+
enabled: true
|
|
79
|
+
description: 'Check for oversized files'
|
|
80
|
+
size_limit_bytes: 1_000_000
|
|
81
|
+
|
|
82
|
+
ForbiddenBranches:
|
|
83
|
+
enabled: true
|
|
84
|
+
description: 'Check for commit to forbidden branch'
|
|
85
|
+
quiet: true
|
|
86
|
+
branch_patterns: ['master', 'develop', 'v*']
|
data/.overcommit_gems.rb
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
GEM
|
|
2
|
+
remote: https://rubygems.org/
|
|
3
|
+
specs:
|
|
4
|
+
ast (2.4.2)
|
|
5
|
+
childprocess (4.1.0)
|
|
6
|
+
iniparse (1.5.0)
|
|
7
|
+
overcommit (0.58.0)
|
|
8
|
+
childprocess (>= 0.6.3, < 5)
|
|
9
|
+
iniparse (~> 1.4)
|
|
10
|
+
rexml (~> 3.2)
|
|
11
|
+
parallel (1.21.0)
|
|
12
|
+
parser (3.1.0.0)
|
|
13
|
+
ast (~> 2.4.1)
|
|
14
|
+
rainbow (3.1.1)
|
|
15
|
+
regexp_parser (2.2.1)
|
|
16
|
+
rexml (3.2.5)
|
|
17
|
+
rubocop (1.25.1)
|
|
18
|
+
parallel (~> 1.10)
|
|
19
|
+
parser (>= 3.1.0.0)
|
|
20
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
21
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
22
|
+
rexml
|
|
23
|
+
rubocop-ast (>= 1.15.1, < 2.0)
|
|
24
|
+
ruby-progressbar (~> 1.7)
|
|
25
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
|
26
|
+
rubocop-ast (1.15.2)
|
|
27
|
+
parser (>= 3.0.1.1)
|
|
28
|
+
rubocop-rspec (2.8.0)
|
|
29
|
+
rubocop (~> 1.19)
|
|
30
|
+
ruby-progressbar (1.11.0)
|
|
31
|
+
unicode-display_width (2.1.0)
|
|
32
|
+
|
|
33
|
+
PLATFORMS
|
|
34
|
+
x86_64-linux
|
|
35
|
+
|
|
36
|
+
DEPENDENCIES
|
|
37
|
+
overcommit
|
|
38
|
+
rubocop
|
|
39
|
+
rubocop-rspec
|
|
40
|
+
|
|
41
|
+
BUNDLED WITH
|
|
42
|
+
2.3.4
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
guard-busted (0.
|
|
5
|
-
guard
|
|
4
|
+
guard-busted (1.0.0)
|
|
5
|
+
guard (~> 2.18)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
8
8
|
remote: https://rubygems.org/
|
|
9
9
|
specs:
|
|
10
|
-
|
|
10
|
+
amazing_print (1.4.0)
|
|
11
|
+
ast (2.4.2)
|
|
11
12
|
coderay (1.1.3)
|
|
12
|
-
diff-lcs (1.
|
|
13
|
-
docile (1.
|
|
14
|
-
ffi (1.
|
|
15
|
-
formatador (
|
|
16
|
-
guard (2.
|
|
13
|
+
diff-lcs (1.5.0)
|
|
14
|
+
docile (1.4.0)
|
|
15
|
+
ffi (1.15.5)
|
|
16
|
+
formatador (1.1.0)
|
|
17
|
+
guard (2.18.0)
|
|
17
18
|
formatador (>= 0.2.4)
|
|
18
19
|
listen (>= 2.7, < 4.0)
|
|
19
20
|
lumberjack (>= 1.0.12, < 2.0)
|
|
20
21
|
nenv (~> 0.1)
|
|
21
22
|
notiffany (~> 0.0)
|
|
22
|
-
pry (>= 0.
|
|
23
|
+
pry (>= 0.13.0)
|
|
23
24
|
shellany (~> 0.0)
|
|
24
25
|
thor (>= 0.18.1)
|
|
25
26
|
guard-compat (1.2.1)
|
|
@@ -27,74 +28,85 @@ GEM
|
|
|
27
28
|
guard (~> 2.1)
|
|
28
29
|
guard-compat (~> 1.1)
|
|
29
30
|
rspec (>= 2.99.0, < 4.0)
|
|
30
|
-
listen (3.
|
|
31
|
+
listen (3.7.1)
|
|
31
32
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
32
33
|
rb-inotify (~> 0.9, >= 0.9.10)
|
|
33
|
-
lumberjack (1.2.
|
|
34
|
+
lumberjack (1.2.8)
|
|
34
35
|
method_source (1.0.0)
|
|
35
36
|
nenv (0.3.0)
|
|
36
37
|
notiffany (0.1.3)
|
|
37
38
|
nenv (~> 0.1)
|
|
38
39
|
shellany (~> 0.0)
|
|
39
|
-
parallel (1.
|
|
40
|
-
parser (3.
|
|
40
|
+
parallel (1.21.0)
|
|
41
|
+
parser (3.1.0.0)
|
|
41
42
|
ast (~> 2.4.1)
|
|
42
|
-
pry (0.
|
|
43
|
+
pry (0.14.1)
|
|
43
44
|
coderay (~> 1.1)
|
|
44
45
|
method_source (~> 1.0)
|
|
45
|
-
rainbow (3.
|
|
46
|
-
rake (
|
|
47
|
-
rb-fsevent (0.
|
|
46
|
+
rainbow (3.1.1)
|
|
47
|
+
rake (13.0.6)
|
|
48
|
+
rb-fsevent (0.11.1)
|
|
48
49
|
rb-inotify (0.10.1)
|
|
49
50
|
ffi (~> 1.0)
|
|
50
|
-
regexp_parser (2.
|
|
51
|
-
rexml (3.2.
|
|
52
|
-
rspec (3.
|
|
53
|
-
rspec-core (~> 3.
|
|
54
|
-
rspec-expectations (~> 3.
|
|
55
|
-
rspec-mocks (~> 3.
|
|
56
|
-
rspec-core (3.
|
|
57
|
-
rspec-support (~> 3.
|
|
58
|
-
rspec-expectations (3.
|
|
51
|
+
regexp_parser (2.2.1)
|
|
52
|
+
rexml (3.2.5)
|
|
53
|
+
rspec (3.11.0)
|
|
54
|
+
rspec-core (~> 3.11.0)
|
|
55
|
+
rspec-expectations (~> 3.11.0)
|
|
56
|
+
rspec-mocks (~> 3.11.0)
|
|
57
|
+
rspec-core (3.11.0)
|
|
58
|
+
rspec-support (~> 3.11.0)
|
|
59
|
+
rspec-expectations (3.11.0)
|
|
59
60
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
60
|
-
rspec-support (~> 3.
|
|
61
|
-
rspec-mocks (3.
|
|
61
|
+
rspec-support (~> 3.11.0)
|
|
62
|
+
rspec-mocks (3.11.0)
|
|
62
63
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
63
|
-
rspec-support (~> 3.
|
|
64
|
-
rspec-support (3.
|
|
65
|
-
rubocop (1.
|
|
64
|
+
rspec-support (~> 3.11.0)
|
|
65
|
+
rspec-support (3.11.0)
|
|
66
|
+
rubocop (1.25.1)
|
|
66
67
|
parallel (~> 1.10)
|
|
67
|
-
parser (>= 3.
|
|
68
|
+
parser (>= 3.1.0.0)
|
|
68
69
|
rainbow (>= 2.2.2, < 4.0)
|
|
69
70
|
regexp_parser (>= 1.8, < 3.0)
|
|
70
71
|
rexml
|
|
71
|
-
rubocop-ast (>= 1.
|
|
72
|
+
rubocop-ast (>= 1.15.1, < 2.0)
|
|
72
73
|
ruby-progressbar (~> 1.7)
|
|
73
74
|
unicode-display_width (>= 1.4.0, < 3.0)
|
|
74
|
-
rubocop-ast (1.
|
|
75
|
-
parser (>=
|
|
75
|
+
rubocop-ast (1.15.2)
|
|
76
|
+
parser (>= 3.0.1.1)
|
|
77
|
+
rubocop-rake (0.6.0)
|
|
78
|
+
rubocop (~> 1.0)
|
|
79
|
+
rubocop-rspec (2.8.0)
|
|
80
|
+
rubocop (~> 1.19)
|
|
76
81
|
ruby-progressbar (1.11.0)
|
|
77
82
|
shellany (0.0.1)
|
|
78
83
|
simplecov (0.21.2)
|
|
79
84
|
docile (~> 1.1)
|
|
80
85
|
simplecov-html (~> 0.11)
|
|
81
86
|
simplecov_json_formatter (~> 0.1)
|
|
87
|
+
simplecov-cobertura (2.1.0)
|
|
88
|
+
rexml
|
|
89
|
+
simplecov (~> 0.19)
|
|
82
90
|
simplecov-html (0.12.3)
|
|
83
|
-
simplecov_json_formatter (0.1.
|
|
84
|
-
thor (1.
|
|
85
|
-
unicode-display_width (2.
|
|
91
|
+
simplecov_json_formatter (0.1.3)
|
|
92
|
+
thor (1.2.1)
|
|
93
|
+
unicode-display_width (2.1.0)
|
|
86
94
|
|
|
87
95
|
PLATFORMS
|
|
88
|
-
|
|
96
|
+
x86_64-linux
|
|
89
97
|
|
|
90
98
|
DEPENDENCIES
|
|
91
|
-
|
|
99
|
+
amazing_print
|
|
100
|
+
guard
|
|
92
101
|
guard-busted!
|
|
93
102
|
guard-rspec
|
|
94
|
-
rake
|
|
95
|
-
rspec
|
|
96
|
-
rubocop
|
|
97
|
-
|
|
103
|
+
rake
|
|
104
|
+
rspec
|
|
105
|
+
rubocop
|
|
106
|
+
rubocop-rake
|
|
107
|
+
rubocop-rspec
|
|
108
|
+
simplecov
|
|
109
|
+
simplecov-cobertura
|
|
98
110
|
|
|
99
111
|
BUNDLED WITH
|
|
100
|
-
2.
|
|
112
|
+
2.3.4
|
data/Guardfile
CHANGED
data/README.md
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
# Guard::Busted
|
|
2
|
-
|
|
3
|
-
[](https://github.com/pjezusek/guard-busted/actions/workflows/rubocop.yml)
|
|
4
|
+
[](https://github.com/pjezusek/guard-busted/actions/workflows/rspec.yml)
|
|
5
|
+
[](https://codecov.io/gh/pjezusek/guard-busted)
|
|
6
|
+
[](https://rubygems.org/gems/guard-busted)
|
|
4
7
|
|
|
5
8
|
Guard for the unit testing framework named [busted](http://olivinelabs.com/busted/)
|
|
6
9
|
|
|
@@ -26,12 +29,15 @@ This command initializes the Guard file.
|
|
|
26
29
|
The provided guard template checks all files with `.lua` extension and starts the corresponding test file.
|
|
27
30
|
It searches test files in `spec` directory with the pattern `spec/<relative_path_to_file>/<file_name>_spec.lua`.
|
|
28
31
|
|
|
29
|
-
|
|
32
|
+
_EXAMPLE:_<br />
|
|
33
|
+
There is some file in the project `some_dir/some_file.lua`.
|
|
30
34
|
After some change on this file the guard-busted gem will try to perform tests located in: `spec/some_dir/some_file_spec.lua`.
|
|
31
35
|
|
|
32
|
-
|
|
36
|
+
_WARNING!:_<br />
|
|
37
|
+
Keep in your mind that it treats `src` dir in the special way.
|
|
33
38
|
It just does not include `src` in the mentioned pattern.
|
|
34
39
|
|
|
40
|
+
The gem also supports desktop notifications.
|
|
35
41
|
|
|
36
42
|
## Contributing
|
|
37
43
|
|
data/bin/dev
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
require 'thor'
|
|
5
|
+
require 'tty-prompt'
|
|
6
|
+
require 'pry'
|
|
7
|
+
require_relative '../lib/guard/busted'
|
|
8
|
+
|
|
9
|
+
$stdout.sync = true
|
|
10
|
+
|
|
11
|
+
# path to the application root
|
|
12
|
+
APP_ROOT = File.expand_path('../', __dir__)
|
|
13
|
+
PROMPT = TTY::Prompt.new
|
|
14
|
+
|
|
15
|
+
# Bunch of commands that are usefull during development
|
|
16
|
+
class Dev < Thor
|
|
17
|
+
def self.exit_on_failure?
|
|
18
|
+
true
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
desc 'autofix', 'Run rubocop autofix'
|
|
22
|
+
def autofix
|
|
23
|
+
Dir.chdir APP_ROOT do
|
|
24
|
+
PROMPT.say 'Running autofix', color: :blue
|
|
25
|
+
system("rubocop -A #{APP_ROOT}", out: $stdout, err: :out)
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
desc 'console', 'Start console'
|
|
30
|
+
def console
|
|
31
|
+
Dir.chdir APP_ROOT do
|
|
32
|
+
Pry.start
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
desc 'guard', 'Start guard'
|
|
37
|
+
def guard
|
|
38
|
+
Dir.chdir APP_ROOT do
|
|
39
|
+
PROMPT.say 'Starting guard', color: :blue
|
|
40
|
+
system('bundle exec guard', out: $stdout, err: :out)
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
desc 'rubocop', 'Run rubocop'
|
|
45
|
+
def rubocop
|
|
46
|
+
Dir.chdir APP_ROOT do
|
|
47
|
+
PROMPT.say 'Running rubocop', color: :blue
|
|
48
|
+
system('rubocop', out: $stdout, err: :out)
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
desc 'rspec', 'Run rspec'
|
|
53
|
+
def rspec
|
|
54
|
+
Dir.chdir APP_ROOT do
|
|
55
|
+
PROMPT.say 'Starting rspec', color: :blue
|
|
56
|
+
system('rspec', out: $stdout, err: :out)
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
desc 'yard', 'Serve configuration via server'
|
|
61
|
+
def yard
|
|
62
|
+
Dir.chdir APP_ROOT do
|
|
63
|
+
PROMPT.say 'Starting yard server', color: :blue
|
|
64
|
+
system('yard server --reload', out: $stdout, err: :out)
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
Dev.start
|
data/bin/setup
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
IFS=$'\n\t'
|
|
4
|
+
set -vx
|
|
5
|
+
|
|
6
|
+
# Go to project root dir
|
|
7
|
+
cd $(git rev-parse --show-toplevel 2>/dev/null)
|
|
8
|
+
|
|
9
|
+
# Install development dependencies
|
|
10
|
+
bundle install
|
|
11
|
+
|
|
12
|
+
# Instal overcommit dependencies
|
|
13
|
+
bundle install --gemfile=.overcommit_gems.rb
|
|
14
|
+
|
|
15
|
+
# Install git hooks
|
|
16
|
+
overcommit --install
|
|
17
|
+
|
|
18
|
+
# Sign git hooks
|
|
19
|
+
overcommit --sign
|
data/guard-busted.gemspec
CHANGED
|
@@ -17,6 +17,7 @@ Gem::Specification.new do |spec|
|
|
|
17
17
|
spec.metadata['homepage_uri'] = spec.homepage
|
|
18
18
|
spec.metadata['source_code_uri'] = 'https://github.com/pjezusek/guard-busted.git'
|
|
19
19
|
spec.metadata['changelog_uri'] = 'https://github.com/pjezusek/guard-busted/blob/master/CHANGELOG.md'
|
|
20
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
|
20
21
|
|
|
21
22
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
|
22
23
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
@@ -25,13 +26,16 @@ Gem::Specification.new do |spec|
|
|
|
25
26
|
spec.test_files = spec.files.grep(%r{^spec/})
|
|
26
27
|
spec.require_paths = ['lib']
|
|
27
28
|
|
|
28
|
-
spec.add_dependency 'guard
|
|
29
|
+
spec.add_dependency 'guard', '~> 2.18'
|
|
29
30
|
|
|
30
|
-
|
|
31
|
-
spec.add_development_dependency 'guard'
|
|
31
|
+
spec.add_development_dependency 'amazing_print'
|
|
32
|
+
spec.add_development_dependency 'guard'
|
|
32
33
|
spec.add_development_dependency 'guard-rspec'
|
|
33
|
-
spec.add_development_dependency 'rake'
|
|
34
|
-
spec.add_development_dependency 'rspec'
|
|
35
|
-
spec.add_development_dependency 'rubocop'
|
|
36
|
-
spec.add_development_dependency '
|
|
34
|
+
spec.add_development_dependency 'rake'
|
|
35
|
+
spec.add_development_dependency 'rspec'
|
|
36
|
+
spec.add_development_dependency 'rubocop'
|
|
37
|
+
spec.add_development_dependency 'rubocop-rake'
|
|
38
|
+
spec.add_development_dependency 'rubocop-rspec'
|
|
39
|
+
spec.add_development_dependency 'simplecov'
|
|
40
|
+
spec.add_development_dependency 'simplecov-cobertura'
|
|
37
41
|
end
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'guard/notifier'
|
|
4
|
+
|
|
5
|
+
module Guard
|
|
6
|
+
# Wrapper for Guard::Notifier to make system notifications
|
|
7
|
+
class BustedNotifier
|
|
8
|
+
attr_accessor :raw_message, :status
|
|
9
|
+
|
|
10
|
+
FAILURE_TITLE = 'Busted - Failure'
|
|
11
|
+
SUCCESS_TITLE = 'Busted - Success'
|
|
12
|
+
|
|
13
|
+
# Initialize BustedNotifier
|
|
14
|
+
#
|
|
15
|
+
# @param message [String] message to parse, output from busted command
|
|
16
|
+
# @param status [Boolean] status of busted command
|
|
17
|
+
def initialize(message, status)
|
|
18
|
+
@raw_message = message
|
|
19
|
+
@status = status
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Send notification to the system
|
|
23
|
+
#
|
|
24
|
+
# The type of the notification depends on the status of busted command.
|
|
25
|
+
def notify
|
|
26
|
+
if status
|
|
27
|
+
notify_success
|
|
28
|
+
else
|
|
29
|
+
notify_failure
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
private
|
|
34
|
+
|
|
35
|
+
# Parse +raw_message+ to extract summary for a notification
|
|
36
|
+
# For now it only supports utfTerminal output
|
|
37
|
+
#
|
|
38
|
+
# @return [String]
|
|
39
|
+
def summary
|
|
40
|
+
@raw_message.match(/^.*success.*$/)
|
|
41
|
+
.to_s
|
|
42
|
+
.gsub(/[[:cntrl:]]/, '')
|
|
43
|
+
.gsub(/\[[0-9]+m/, '')
|
|
44
|
+
.gsub(/ : [0-9]+\.[0-9]+ seconds/, '')
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Notify with failure
|
|
48
|
+
def notify_failure
|
|
49
|
+
Guard::Notifier.notify(
|
|
50
|
+
summary,
|
|
51
|
+
title: FAILURE_TITLE,
|
|
52
|
+
image: :failed,
|
|
53
|
+
priority: 2
|
|
54
|
+
)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# Notify with success
|
|
58
|
+
def notify_success
|
|
59
|
+
Guard::Notifier.notify(
|
|
60
|
+
summary,
|
|
61
|
+
title: SUCCESS_TITLE,
|
|
62
|
+
image: :success,
|
|
63
|
+
priority: -2
|
|
64
|
+
)
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
data/lib/guard/busted/options.rb
CHANGED
data/lib/guard/busted/runner.rb
CHANGED
|
@@ -1,48 +1,78 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require 'guard/ui'
|
|
4
|
+
|
|
5
|
+
require_relative 'notifier'
|
|
6
|
+
|
|
3
7
|
module Guard
|
|
4
8
|
# The class responsible for running 'busted' command in the proper context.
|
|
5
9
|
class BustedRunner < Plugin
|
|
6
|
-
attr_accessor :
|
|
10
|
+
attr_accessor :cmd, :cmd_options, :cmd_all, :cmd_all_options
|
|
7
11
|
|
|
12
|
+
# Initialize BustedRunner
|
|
13
|
+
# It accepts following options:
|
|
14
|
+
# - cmd - command to perform for specific spec files,
|
|
15
|
+
# - cmd_options [Array<String>] - options for cmd command,
|
|
16
|
+
# - cmd_all - command to perform for all spec files
|
|
17
|
+
# - cmd_all_options [Array<String>] - options for cmd_all command.
|
|
18
|
+
#
|
|
19
|
+
# @param options [Hash<Symbol, String>] options for runner
|
|
8
20
|
def initialize(options)
|
|
9
21
|
super
|
|
10
22
|
|
|
11
23
|
@cmd = options[:cmd]
|
|
12
|
-
@cmd_options = options[:cmd_options]
|
|
24
|
+
@cmd_options = Array(options[:cmd_options])
|
|
13
25
|
@cmd_all = options[:cmd_all]
|
|
14
|
-
@cmd_all_options = options[:cmd_all_options]
|
|
26
|
+
@cmd_all_options = Array(options[:cmd_all_options])
|
|
15
27
|
end
|
|
16
28
|
|
|
17
29
|
# Run all tests in the project
|
|
18
30
|
#
|
|
19
31
|
# @raise [:task_has_failed] when run_all has failed
|
|
20
32
|
def run_all
|
|
21
|
-
|
|
22
|
-
status =
|
|
33
|
+
UI.info 'Running all tests'
|
|
34
|
+
status, stdout = perform_command([@cmd_all] + @cmd_all_options)
|
|
35
|
+
Guard::BustedNotifier.new(stdout, status).notify
|
|
23
36
|
throw(:task_has_failed) unless status
|
|
24
37
|
end
|
|
25
38
|
|
|
39
|
+
# Run tests for the given paths
|
|
40
|
+
#
|
|
41
|
+
# @param paths [Array<String>] array of spec files
|
|
42
|
+
#
|
|
43
|
+
# @raise [:task_has_failed] when tests failed
|
|
26
44
|
def run(paths)
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
throw(:task_has_failed) if results.any? { |x| x == false }
|
|
45
|
+
existing_paths = paths.select { |p| Pathname.new(p).exist? }
|
|
46
|
+
|
|
47
|
+
return if existing_paths.empty?
|
|
48
|
+
|
|
49
|
+
UI.info "Running #{existing_paths.join(', ')}"
|
|
50
|
+
status, stdout = perform_command([@cmd] + @cmd_options + existing_paths)
|
|
51
|
+
Guard::BustedNotifier.new(stdout, status).notify
|
|
52
|
+
throw(:task_has_failed) unless status
|
|
36
53
|
end
|
|
37
54
|
|
|
38
55
|
private
|
|
39
56
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
57
|
+
# Performs command and print stdout and stderr to the console
|
|
58
|
+
#
|
|
59
|
+
# @param cmd [Array<String>] command to perform
|
|
60
|
+
#
|
|
61
|
+
# @return [Array<Boolean, String>]
|
|
62
|
+
def perform_command(cmd)
|
|
63
|
+
message = ''
|
|
64
|
+
status = 0
|
|
65
|
+
Open3.popen2e(*cmd) do |_, stdout_and_stderr, wait_thr|
|
|
66
|
+
# :nocov:
|
|
67
|
+
while (line = stdout_and_stderr.gets)
|
|
68
|
+
message += line
|
|
69
|
+
puts line
|
|
70
|
+
end
|
|
71
|
+
status = wait_thr.value.success?
|
|
72
|
+
# :nocov:
|
|
73
|
+
end
|
|
43
74
|
|
|
44
|
-
|
|
45
|
-
[options[:cmd_all], *options[:cmd_all_options]].join(' ')
|
|
75
|
+
[status, message]
|
|
46
76
|
end
|
|
47
77
|
end
|
|
48
78
|
end
|
data/lib/guard/busted/version.rb
CHANGED
data/lib/guard/busted.rb
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'guard/
|
|
3
|
+
require 'guard/plugin'
|
|
4
|
+
require 'guard/ui'
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
require_relative 'busted/options'
|
|
7
|
+
require_relative 'busted/runner'
|
|
8
|
+
require_relative 'busted/utils'
|
|
8
9
|
|
|
9
10
|
module Guard
|
|
10
11
|
# Plugin for 'guard' which starts 'busted' (lua unit testing framework) if a change is detected.
|
|
@@ -39,10 +40,13 @@ module Guard
|
|
|
39
40
|
private
|
|
40
41
|
|
|
41
42
|
def check_if_busted_exist
|
|
43
|
+
# :nocov:
|
|
42
44
|
return unless which('busted').nil?
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
+
# :nocov:
|
|
47
|
+
|
|
48
|
+
UI.error 'Busted not found. Use :cmd option or ' \
|
|
49
|
+
'install `busted` via `luarocks install busted --local`'
|
|
46
50
|
end
|
|
47
51
|
end
|
|
48
52
|
end
|
metadata
CHANGED
|
@@ -1,43 +1,57 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: guard-busted
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Piotr Jezusek
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-04-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name: guard
|
|
14
|
+
name: guard
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '2.18'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '2.18'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: amazing_print
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :development
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
27
41
|
- !ruby/object:Gem::Dependency
|
|
28
42
|
name: guard
|
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
|
30
44
|
requirements:
|
|
31
|
-
- - "
|
|
45
|
+
- - ">="
|
|
32
46
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
47
|
+
version: '0'
|
|
34
48
|
type: :development
|
|
35
49
|
prerelease: false
|
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
51
|
requirements:
|
|
38
|
-
- - "
|
|
52
|
+
- - ">="
|
|
39
53
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
54
|
+
version: '0'
|
|
41
55
|
- !ruby/object:Gem::Dependency
|
|
42
56
|
name: guard-rspec
|
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -56,58 +70,100 @@ dependencies:
|
|
|
56
70
|
name: rake
|
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
|
58
72
|
requirements:
|
|
59
|
-
- - "
|
|
73
|
+
- - ">="
|
|
60
74
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '
|
|
75
|
+
version: '0'
|
|
62
76
|
type: :development
|
|
63
77
|
prerelease: false
|
|
64
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
79
|
requirements:
|
|
66
|
-
- - "
|
|
80
|
+
- - ">="
|
|
67
81
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '
|
|
82
|
+
version: '0'
|
|
69
83
|
- !ruby/object:Gem::Dependency
|
|
70
84
|
name: rspec
|
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
|
72
86
|
requirements:
|
|
73
|
-
- - "
|
|
87
|
+
- - ">="
|
|
74
88
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '
|
|
89
|
+
version: '0'
|
|
76
90
|
type: :development
|
|
77
91
|
prerelease: false
|
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
93
|
requirements:
|
|
80
|
-
- - "
|
|
94
|
+
- - ">="
|
|
81
95
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '
|
|
96
|
+
version: '0'
|
|
83
97
|
- !ruby/object:Gem::Dependency
|
|
84
98
|
name: rubocop
|
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
|
86
100
|
requirements:
|
|
87
|
-
- - "
|
|
101
|
+
- - ">="
|
|
88
102
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '
|
|
103
|
+
version: '0'
|
|
90
104
|
type: :development
|
|
91
105
|
prerelease: false
|
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
107
|
requirements:
|
|
94
|
-
- - "
|
|
108
|
+
- - ">="
|
|
95
109
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '
|
|
110
|
+
version: '0'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: rubocop-rake
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - ">="
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '0'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - ">="
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '0'
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
name: rubocop-rspec
|
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
|
128
|
+
requirements:
|
|
129
|
+
- - ">="
|
|
130
|
+
- !ruby/object:Gem::Version
|
|
131
|
+
version: '0'
|
|
132
|
+
type: :development
|
|
133
|
+
prerelease: false
|
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
+
requirements:
|
|
136
|
+
- - ">="
|
|
137
|
+
- !ruby/object:Gem::Version
|
|
138
|
+
version: '0'
|
|
97
139
|
- !ruby/object:Gem::Dependency
|
|
98
140
|
name: simplecov
|
|
99
141
|
requirement: !ruby/object:Gem::Requirement
|
|
100
142
|
requirements:
|
|
101
|
-
- - "
|
|
143
|
+
- - ">="
|
|
102
144
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '0
|
|
145
|
+
version: '0'
|
|
104
146
|
type: :development
|
|
105
147
|
prerelease: false
|
|
106
148
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
149
|
requirements:
|
|
108
|
-
- - "
|
|
150
|
+
- - ">="
|
|
151
|
+
- !ruby/object:Gem::Version
|
|
152
|
+
version: '0'
|
|
153
|
+
- !ruby/object:Gem::Dependency
|
|
154
|
+
name: simplecov-cobertura
|
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
|
156
|
+
requirements:
|
|
157
|
+
- - ">="
|
|
158
|
+
- !ruby/object:Gem::Version
|
|
159
|
+
version: '0'
|
|
160
|
+
type: :development
|
|
161
|
+
prerelease: false
|
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
163
|
+
requirements:
|
|
164
|
+
- - ">="
|
|
109
165
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '0
|
|
166
|
+
version: '0'
|
|
111
167
|
description: Guard::Busted automatically run your specs
|
|
112
168
|
email:
|
|
113
169
|
- piotr.jezusek@softbeam.pl
|
|
@@ -115,10 +171,15 @@ executables: []
|
|
|
115
171
|
extensions: []
|
|
116
172
|
extra_rdoc_files: []
|
|
117
173
|
files:
|
|
174
|
+
- ".github/workflows/rspec.yml"
|
|
175
|
+
- ".github/workflows/rubocop.yml"
|
|
176
|
+
- ".github/workflows/rubygems.yml"
|
|
118
177
|
- ".gitignore"
|
|
178
|
+
- ".overcommit.yml"
|
|
179
|
+
- ".overcommit_gems.rb"
|
|
180
|
+
- ".overcommit_gems.rb.lock"
|
|
119
181
|
- ".rspec"
|
|
120
182
|
- ".rubocop.yml"
|
|
121
|
-
- ".travis.yml"
|
|
122
183
|
- CHANGELOG.md
|
|
123
184
|
- Gemfile
|
|
124
185
|
- Gemfile.lock
|
|
@@ -126,8 +187,11 @@ files:
|
|
|
126
187
|
- LICENSE.txt
|
|
127
188
|
- README.md
|
|
128
189
|
- Rakefile
|
|
190
|
+
- bin/dev
|
|
191
|
+
- bin/setup
|
|
129
192
|
- guard-busted.gemspec
|
|
130
193
|
- lib/guard/busted.rb
|
|
194
|
+
- lib/guard/busted/notifier.rb
|
|
131
195
|
- lib/guard/busted/options.rb
|
|
132
196
|
- lib/guard/busted/runner.rb
|
|
133
197
|
- lib/guard/busted/templates/Guardfile
|
|
@@ -140,6 +204,7 @@ metadata:
|
|
|
140
204
|
homepage_uri: https://github.com/pjezusek/guard-busted.git
|
|
141
205
|
source_code_uri: https://github.com/pjezusek/guard-busted.git
|
|
142
206
|
changelog_uri: https://github.com/pjezusek/guard-busted/blob/master/CHANGELOG.md
|
|
207
|
+
rubygems_mfa_required: 'true'
|
|
143
208
|
post_install_message:
|
|
144
209
|
rdoc_options: []
|
|
145
210
|
require_paths:
|
|
@@ -155,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
155
220
|
- !ruby/object:Gem::Version
|
|
156
221
|
version: '0'
|
|
157
222
|
requirements: []
|
|
158
|
-
rubygems_version: 3.
|
|
223
|
+
rubygems_version: 3.2.32
|
|
159
224
|
signing_key:
|
|
160
225
|
specification_version: 4
|
|
161
226
|
summary: Guard gem for busted
|
data/.travis.yml
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
language: ruby
|
|
2
|
-
cache: bundler
|
|
3
|
-
rvm:
|
|
4
|
-
- 2.7.0
|
|
5
|
-
before_install: gem install bundler -v 2.1.4
|
|
6
|
-
script: bundle exec rake spec
|
|
7
|
-
deploy:
|
|
8
|
-
provider: rubygems
|
|
9
|
-
api_key:
|
|
10
|
-
secure: tWkmZxm7D6fQGK3Shnccss9kXbGvAPFk4xr8fozhcX8xFut9P4+xs6U3iOa/JWWVb04YH5XHSI/i1B5cRMrK5v/xbY4jyJzRHHq9pcrYmnrnazDvpvDk6bb73PSOUZfBiSHxTu2EWk7wWuFIeFt81gQuX1k1tskAgKjXTsuPHCHJILlWP1HKpvIIoERffhWBAy8cDvURG64C8gaykTEj5rfHfdluA+PFZjum30vmkm8G48LuxprlmjYUDBIViXL/YZD+2AkRFeWSQOD7IB/34vFwnrZtw6mel42kU2zxdPOvW8JSLGNXExQyIr0krFsvgPq4TUkBqpkpHMOdDX4curSAEc+b2FROtYLwTY9MCnanQ4/KAbLxFiEuZlffPNm1g4EsfYA9B8e1xGkjJm9sLkIkKv+uztEq4p+x8DAe99y6lm+kTb36/IBFaeucCi5JjUWsGlGdQE2VrVfNcNTDhMXmUC8FEwiM1oOJYSDkjB0tpkU9VCIgLbrpFK8Nk8ByxO+5V2myvPfpWyN4sG3d1BIgKMJdOGlqI9ECHa9S64TLexGa9HZcBaYHXeYrUEMmPVcVNAdkU1WwcqvBAKq7so31zwAKoASMdKYV7xp8gZj+VIefwO74NaA7D2j31OuzMZUrl1QEZxsYXLsUWOTbrSFW+sMBaL8vtKK6Q2u+jNQ=
|
|
11
|
-
gem: guard-busted
|
|
12
|
-
on:
|
|
13
|
-
tags: true
|
|
14
|
-
repo: pjezusek/guard-busted
|
|
15
|
-
skip_cleanup: 'true'
|