polishgeeks-dev-tools 1.2.1 → 1.3.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.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.travis.yml +3 -2
  4. data/CHANGELOG.md +69 -0
  5. data/Gemfile.lock +76 -81
  6. data/README.md +28 -22
  7. data/Rakefile +4 -3
  8. data/config/rubocop.yml +16 -16
  9. data/config/rubocop_todo.yml +14 -0
  10. data/lib/polish_geeks/dev_tools.rb +26 -0
  11. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/allowed_extensions.rb +4 -4
  12. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/base.rb +18 -3
  13. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/brakeman.rb +5 -2
  14. data/lib/polish_geeks/dev_tools/commands/bundler_audit.rb +23 -0
  15. data/lib/{polishgeeks/dev-tools/commands/empty_method.rb → polish_geeks/dev_tools/commands/empty_methods.rb} +3 -13
  16. data/lib/{polishgeeks/dev-tools/commands/empty_method → polish_geeks/dev_tools/commands/empty_methods}/file_parser.rb +1 -1
  17. data/lib/{polishgeeks/dev-tools/commands/empty_method → polish_geeks/dev_tools/commands/empty_methods}/string_refinements.rb +2 -2
  18. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/examples_comparator.rb +13 -7
  19. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/expires_in.rb +6 -6
  20. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/final_blank_line.rb +1 -11
  21. data/lib/polish_geeks/dev_tools/commands/gemfile.rb +39 -0
  22. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/haml_lint.rb +0 -0
  23. data/lib/polish_geeks/dev_tools/commands/required_files.rb +38 -0
  24. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rspec.rb +24 -5
  25. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rspec_files_names.rb +1 -1
  26. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rspec_files_structure.rb +22 -9
  27. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rubocop.rb +10 -8
  28. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rubycritic.rb +0 -0
  29. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/simplecov.rb +0 -0
  30. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/tasks_files_names.rb +0 -0
  31. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/yard.rb +0 -0
  32. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/yml_parser.rb +0 -0
  33. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/config.rb +24 -16
  34. data/lib/polish_geeks/dev_tools/config_manager.rb +68 -0
  35. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/errors.rb +0 -0
  36. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/hash.rb +0 -0
  37. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/logger.rb +3 -3
  38. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/output_storer.rb +0 -0
  39. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/runner.rb +0 -0
  40. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/shell.rb +0 -0
  41. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/tasks/dev-tools.rake +0 -0
  42. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/base.rb +2 -2
  43. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/rails.rb +0 -0
  44. data/lib/polish_geeks/dev_tools/validators/rubocop.rb +12 -0
  45. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/simplecov.rb +1 -1
  46. data/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/version.rb +1 -1
  47. data/lib/polishgeeks-dev-tools.rb +6 -31
  48. data/polishgeeks_dev_tools.gemspec +6 -5
  49. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/allowed_extensions_spec.rb +5 -17
  50. data/spec/lib/polish_geeks/dev_tools/commands/base_spec.rb +90 -0
  51. data/spec/lib/polish_geeks/dev_tools/commands/brakeman_spec.rb +99 -0
  52. data/spec/lib/polish_geeks/dev_tools/commands/bundler_audit_spec.rb +52 -0
  53. data/spec/lib/{polishgeeks/dev-tools/commands/empty_method → polish_geeks/dev_tools/commands/empty_methods}/file_parser_spec.rb +1 -1
  54. data/spec/lib/{polishgeeks/dev-tools/commands/empty_method → polish_geeks/dev_tools/commands/empty_methods}/string_refinements_spec.rb +1 -1
  55. data/spec/lib/{polishgeeks/dev-tools/commands/empty_method_spec.rb → polish_geeks/dev_tools/commands/empty_methods_spec.rb} +7 -54
  56. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/examples_comparator_spec.rb +8 -8
  57. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/expires_in_spec.rb +1 -1
  58. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/final_blank_line_spec.rb +2 -45
  59. data/spec/lib/polish_geeks/dev_tools/commands/gemfile_spec.rb +91 -0
  60. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/haml_lint_spec.rb +13 -21
  61. data/spec/lib/polish_geeks/dev_tools/commands/required_files_spec.rb +51 -0
  62. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rspec_files_names_spec.rb +2 -2
  63. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rspec_files_structure_spec.rb +19 -32
  64. data/spec/lib/polish_geeks/dev_tools/commands/rspec_spec.rb +106 -0
  65. data/spec/lib/polish_geeks/dev_tools/commands/rubocop_spec.rb +131 -0
  66. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/rubycritic_spec.rb +5 -3
  67. data/spec/lib/polish_geeks/dev_tools/commands/simplecov_spec.rb +136 -0
  68. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/tasks_files_names_spec.rb +8 -8
  69. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/yard_spec.rb +10 -10
  70. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/commands/yml_parser_spec.rb +2 -2
  71. data/spec/lib/polish_geeks/dev_tools/config_manager_spec.rb +124 -0
  72. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/config_spec.rb +3 -3
  73. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/errors_spec.rb +0 -0
  74. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/hash_spec.rb +8 -8
  75. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/logger_spec.rb +9 -9
  76. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/output_storer_spec.rb +1 -1
  77. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/runner_spec.rb +0 -0
  78. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/shell_spec.rb +1 -1
  79. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/base_spec.rb +0 -0
  80. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/rails_spec.rb +0 -0
  81. data/spec/lib/polish_geeks/dev_tools/validators/rubocop_spec.rb +29 -0
  82. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/validators/simplecov_spec.rb +1 -1
  83. data/spec/lib/{polishgeeks/dev-tools → polish_geeks/dev_tools}/version_spec.rb +0 -0
  84. data/spec/lib/{polishgeeks-dev-tools_spec.rb → polish_geeks/dev_tools_spec.rb} +2 -2
  85. data/spec/spec_helper.rb +1 -1
  86. metadata +141 -99
  87. data/lib/polishgeeks/dev-tools/commands/readme.rb +0 -32
  88. data/spec/lib/polishgeeks/dev-tools/commands/base_spec.rb +0 -55
  89. data/spec/lib/polishgeeks/dev-tools/commands/brakeman_spec.rb +0 -96
  90. data/spec/lib/polishgeeks/dev-tools/commands/readme_spec.rb +0 -38
  91. data/spec/lib/polishgeeks/dev-tools/commands/rspec_spec.rb +0 -63
  92. data/spec/lib/polishgeeks/dev-tools/commands/rubocop_spec.rb +0 -127
  93. data/spec/lib/polishgeeks/dev-tools/commands/simplecov_spec.rb +0 -134
@@ -1,32 +0,0 @@
1
- module PolishGeeks
2
- module DevTools
3
- module Commands
4
- # Checks README.rb exists
5
- class Readme < Base
6
- self.type = :validator
7
-
8
- # Executes this command
9
- # @return [String] command output
10
- def execute
11
- readme = File.join(::PolishGeeks::DevTools.app_root, 'README.md')
12
- @output = File.exist?(readme)
13
- end
14
-
15
- # @return [String] label with this validator description
16
- def label
17
- 'README.rb required'
18
- end
19
-
20
- # @return [String] error message
21
- def error_message
22
- "README.rb doesn't exist!"
23
- end
24
-
25
- # @return [Boolean] true if README.rb exist
26
- def valid?
27
- @output
28
- end
29
- end
30
- end
31
- end
32
- end
@@ -1,55 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Base do
4
- subject { described_class.new }
5
-
6
- describe '#execute' do
7
- let(:error) { PolishGeeks::DevTools::Errors::NotImplementedError }
8
- it { expect { subject.execute }. to raise_error(error) }
9
- end
10
-
11
- describe '#valid?' do
12
- let(:error) { PolishGeeks::DevTools::Errors::NotImplementedError }
13
- it { expect { subject.valid? }. to raise_error(error) }
14
- end
15
-
16
- describe '#error_message' do
17
- let(:output) { rand.to_s }
18
-
19
- before do
20
- subject.instance_variable_set('@output', output)
21
- end
22
-
23
- it 'by default should equal raw output' do
24
- expect(subject.error_message).to eq output
25
- end
26
- end
27
-
28
- describe '#ensure_executable!' do
29
- context 'when there are validators' do
30
- let(:validator_class) { PolishGeeks::DevTools::Validators::Base }
31
-
32
- before do
33
- expect(described_class)
34
- .to receive(:validators)
35
- .and_return([validator_class])
36
-
37
- expect_any_instance_of(validator_class)
38
- .to receive(:valid?)
39
- .and_return(true)
40
- end
41
-
42
- it { expect { subject.ensure_executable! }.not_to raise_error }
43
- end
44
-
45
- context 'when we dont require any validators' do
46
- before do
47
- expect(described_class)
48
- .to receive(:validators)
49
- .and_return([])
50
- end
51
-
52
- it { expect { subject.ensure_executable! }.not_to raise_error }
53
- end
54
- end
55
- end
@@ -1,96 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Brakeman do
4
- subject { described_class }
5
-
6
- describe '#validators' do
7
- it 'should work only when we have Rails framework' do
8
- expect(subject.validators).to eq [PolishGeeks::DevTools::Validators::Rails]
9
- end
10
- end
11
- end
12
-
13
- RSpec.describe PolishGeeks::DevTools::Commands::Brakeman do
14
- subject { described_class.new }
15
-
16
- describe '#execute' do
17
- context 'when we run brakeman' do
18
- before do
19
- expect_any_instance_of(PolishGeeks::DevTools::Shell)
20
- .to receive(:execute)
21
- .with('bundle exec brakeman -q')
22
- end
23
-
24
- it 'should execute the command' do
25
- subject.execute
26
- end
27
- end
28
- end
29
-
30
- describe '#valid?' do
31
- context 'when warnings are equal 0' do
32
- before do
33
- expect(subject)
34
- .to receive(:warnings)
35
- .and_return(0)
36
- end
37
-
38
- context 'and errors are equal 0' do
39
- before do
40
- expect(subject)
41
- .to receive(:errors)
42
- .and_return(0)
43
- end
44
-
45
- it 'should return true' do
46
- expect(subject.valid?).to eq true
47
- end
48
- end
49
-
50
- context 'and errors are not equal 0' do
51
- before do
52
- expect(subject)
53
- .to receive(:errors)
54
- .and_return(1)
55
- end
56
-
57
- it 'should return true' do
58
- expect(subject.valid?).to eq false
59
- end
60
- end
61
- end
62
- end
63
-
64
- describe 'label' do
65
- let(:models) { rand(1000) }
66
- let(:controllers) { rand(1000) }
67
- let(:templates) { rand(1000) }
68
-
69
- before do
70
- expect(subject).to receive(:models).and_return(models)
71
- expect(subject).to receive(:controllers).and_return(controllers)
72
- expect(subject).to receive(:templates).and_return(templates)
73
- end
74
-
75
- it 'should use details' do
76
- label = "Brakeman (#{controllers} con, #{models} mod, #{templates} temp)"
77
- expect(subject.label).to eq label
78
- end
79
- end
80
-
81
- describe 'counter' do
82
- described_class::REGEXPS.each do |name, _regexp|
83
- describe "##{name}" do
84
- let(:amount) { rand(1000) }
85
-
86
- before do
87
- subject.instance_variable_set(:@output, "#{name.to_s.capitalize} #{amount}")
88
- end
89
-
90
- it 'should return a proper value' do
91
- expect(subject.send(name)).to eq amount
92
- end
93
- end
94
- end
95
- end
96
- end
@@ -1,38 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Readme do
4
- subject { described_class.new }
5
-
6
- let(:config) { double }
7
-
8
- describe '#execute' do
9
- it 'should execute the command' do
10
- subject.execute
11
- end
12
- end
13
-
14
- describe '#label' do
15
- let(:expected) { 'README.rb required' }
16
-
17
- it { expect(subject.label).to eq expected }
18
- end
19
-
20
- describe '#error_message' do
21
- let(:expected) { "README.rb doesn't exist!" }
22
- let(:output) { false }
23
-
24
- it { expect(subject.error_message).to eq expected }
25
- end
26
-
27
- describe '#valid?' do
28
- context 'when README.md exist' do
29
- before do
30
- subject.instance_variable_set('@output', true)
31
- end
32
-
33
- it 'should return true' do
34
- expect(subject.valid?).to be true
35
- end
36
- end
37
- end
38
- end
@@ -1,63 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Rspec do
4
- subject { described_class.new }
5
-
6
- describe '#execute' do
7
- context 'when we run rspec' do
8
- before do
9
- expect_any_instance_of(PolishGeeks::DevTools::Shell)
10
- .to receive(:execute)
11
- .with('bundle exec rspec spec')
12
- end
13
-
14
- it 'should execute the command' do
15
- subject.execute
16
- end
17
- end
18
- end
19
-
20
- describe '#valid?' do
21
- context 'when there are some failures' do
22
- before do
23
- subject.instance_variable_set(:@output, '2 failures')
24
- end
25
-
26
- it 'should return false' do
27
- expect(subject.valid?).to eq false
28
- end
29
- end
30
-
31
- context 'when there are not any failures' do
32
- before do
33
- subject.instance_variable_set(:@output, '0 failures')
34
- end
35
-
36
- it 'should return true' do
37
- expect(subject.valid?).to eq true
38
- end
39
- end
40
- end
41
-
42
- describe '#label' do
43
- context 'when we run rspec' do
44
- let(:label) { '10 examples, 5 failures, 2 pending' }
45
-
46
- before do
47
- subject.instance_variable_set(:@output, label)
48
- end
49
-
50
- it 'should return the label' do
51
- expect(subject.label).to eq 'Rspec (10 ex, 5 fa, 2 pe)'
52
- end
53
- end
54
- end
55
-
56
- describe '.generator?' do
57
- it { expect(described_class.generator?).to eq false }
58
- end
59
-
60
- describe '.validator?' do
61
- it { expect(described_class.validator?).to eq true }
62
- end
63
- end
@@ -1,127 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Rubocop do
4
- subject { described_class.new }
5
-
6
- describe '#execute' do
7
- let(:path) { '/' }
8
- before do
9
- expect(ENV)
10
- .to receive(:[])
11
- .with('BUNDLE_GEMFILE')
12
- .and_return(path)
13
- .at_least(:once)
14
- end
15
-
16
- context 'when app config exists' do
17
- before do
18
- expect(File)
19
- .to receive(:exist?)
20
- .and_return(true)
21
- expect_any_instance_of(PolishGeeks::DevTools::Shell)
22
- .to receive(:execute)
23
- .with("bundle exec rubocop -c #{path}.rubocop.yml #{PolishGeeks::DevTools.app_root}")
24
- end
25
-
26
- it 'should execute the command' do
27
- subject.execute
28
- end
29
- end
30
-
31
- context 'when app config does not exist' do
32
- let(:path) { Dir.pwd }
33
- let(:app_root) { PolishGeeks::DevTools.app_root }
34
- let(:cmd_expected) { "bundle exec rubocop -c #{path}/config/rubocop.yml #{app_root}" }
35
-
36
- before do
37
- expect(PolishGeeks::DevTools)
38
- .to receive(:gem_root)
39
- .and_return(path)
40
- expect(File)
41
- .to receive(:exist?)
42
- .and_return(false)
43
- expect_any_instance_of(PolishGeeks::DevTools::Shell)
44
- .to receive(:execute)
45
- .with(cmd_expected)
46
- end
47
-
48
- it 'should execute the command' do
49
- subject.execute
50
- end
51
- end
52
- end
53
-
54
- describe '#valid?' do
55
- context 'when offenses count is equal 0' do
56
- before do
57
- expect(subject)
58
- .to receive(:offenses_count)
59
- .and_return(0)
60
- end
61
-
62
- it 'should return true' do
63
- expect(subject.valid?).to eq true
64
- end
65
- end
66
-
67
- context 'when offenses count is different from 0' do
68
- before do
69
- expect(subject)
70
- .to receive(:offenses_count)
71
- .and_return(100)
72
- end
73
-
74
- it 'should return false' do
75
- expect(subject.valid?).to eq false
76
- end
77
- end
78
- end
79
-
80
- describe '#label' do
81
- context 'when we run rubocop' do
82
- before do
83
- expect(subject)
84
- .to receive(:files_count)
85
- .and_return(10)
86
- expect(subject)
87
- .to receive(:offenses_count)
88
- .and_return(5)
89
- end
90
- it 'should return the label' do
91
- expect(subject.label).to eq 'Rubocop (10 files, 5 offenses)'
92
- end
93
- end
94
- end
95
-
96
- describe '#files_count' do
97
- context 'when we count files' do
98
- before do
99
- subject.instance_variable_set(:@output, '10 files inspected')
100
- end
101
-
102
- it 'should return a proper value' do
103
- expect(subject.send(:files_count)).to eq 10
104
- end
105
- end
106
- end
107
-
108
- describe '#offenses_count' do
109
- context 'when we count offenses' do
110
- before do
111
- subject.instance_variable_set(:@output, '5 offenses detected')
112
- end
113
-
114
- it 'should return a proper value' do
115
- expect(subject.send(:offenses_count)).to eq 5
116
- end
117
- end
118
- end
119
-
120
- describe '.generator?' do
121
- it { expect(described_class.generator?).to eq false }
122
- end
123
-
124
- describe '.validator?' do
125
- it { expect(described_class.validator?).to eq true }
126
- end
127
- end
@@ -1,134 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe PolishGeeks::DevTools::Commands::Simplecov do
4
- subject { described_class }
5
-
6
- describe '#validators' do
7
- it 'should work only when we have Simplecov' do
8
- expect(subject.validators).to eq [PolishGeeks::DevTools::Validators::Simplecov]
9
- end
10
- end
11
- end
12
-
13
- RSpec.describe PolishGeeks::DevTools::Commands::Simplecov do
14
- subject { described_class.new }
15
-
16
- let(:label) { '(95.00%) covered' }
17
- let(:config) { double }
18
-
19
- describe '#to_f' do
20
- context 'when we run simplecov' do
21
- before do
22
- subject.instance_variable_set(:@output, label)
23
- end
24
-
25
- it 'should return number of coverage as a float value' do
26
- expect(subject.to_f).to eq 95.00
27
- end
28
- end
29
- end
30
-
31
- describe '#execute' do
32
- context 'when we run simplecov' do
33
- let(:output) { OpenStruct.new(rspec: label) }
34
-
35
- before do
36
- subject.instance_variable_set(:@stored_output, output)
37
- end
38
-
39
- it 'should execute the command' do
40
- expect(subject.execute).to eq label
41
- end
42
- end
43
- end
44
-
45
- describe '#valid?' do
46
- context 'when cc level is greater or equal than expected' do
47
- before do
48
- expect(subject)
49
- .to receive(:to_f)
50
- .and_return(95.0)
51
- expect(PolishGeeks::DevTools::Config)
52
- .to receive(:config)
53
- .and_return(config)
54
- expect(config)
55
- .to receive(:simplecov_threshold)
56
- .and_return(65.0)
57
- end
58
-
59
- it 'should return true' do
60
- expect(subject.valid?).to eq true
61
- end
62
- end
63
-
64
- context 'when cc level is less than expected' do
65
- before do
66
- expect(subject)
67
- .to receive(:to_f)
68
- .and_return(65.0)
69
- expect(PolishGeeks::DevTools::Config)
70
- .to receive(:config)
71
- .and_return(config)
72
- expect(config)
73
- .to receive(:simplecov_threshold)
74
- .and_return(95.0)
75
- end
76
-
77
- it 'should return false' do
78
- expect(subject.valid?).to eq false
79
- end
80
- end
81
- end
82
-
83
- describe '#label' do
84
- context 'when we run simplecov and cc is greater or equal than expected' do
85
- before do
86
- expect(subject)
87
- .to receive(:to_f)
88
- .and_return(95.0)
89
- expect(PolishGeeks::DevTools::Config)
90
- .to receive(:config)
91
- .and_return(config)
92
- expect(config)
93
- .to receive(:simplecov_threshold)
94
- .and_return(65.0)
95
- end
96
-
97
- it 'should return the label' do
98
- expect(subject.label).to eq 'SimpleCov covered 95.0%, required 65.0%'
99
- end
100
- end
101
- end
102
-
103
- describe '#error_message' do
104
- context 'when we run simplecov and cc is less than expected' do
105
- before { allow(subject).to receive(:to_f) { 65.0 } }
106
-
107
- context 'and threshold is 95%' do
108
- before { allow(subject).to receive(:threshold) { 95.0 } }
109
-
110
- it 'should return the error message' do
111
- expect(subject.error_message)
112
- .to eq 'SimpleCov coverage level needs to be 95.0% or more, was 65.0%'
113
- end
114
- end
115
-
116
- context 'and threshold is 100%' do
117
- before { allow(subject).to receive(:threshold) { 100.0 } }
118
-
119
- it 'should return the error message' do
120
- expect(subject.error_message)
121
- .to eq 'SimpleCov coverage level needs to be 100.0%, was 65.0%'
122
- end
123
- end
124
- end
125
- end
126
-
127
- describe '.generator?' do
128
- it { expect(described_class.generator?).to eq false }
129
- end
130
-
131
- describe '.validator?' do
132
- it { expect(described_class.validator?).to eq true }
133
- end
134
- end