defmastership 1.0.16 → 1.0.18

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.gitlab-ci.yml +50 -7
  4. data/.rubocop.yml +14 -6
  5. data/Gemfile +51 -1
  6. data/Rakefile +16 -47
  7. data/bin/defmastership +12 -9
  8. data/config/mutant.yml +23 -3
  9. data/defmastership.gemspec +22 -27
  10. data/features/definition_checksum.feature +31 -1
  11. data/features/export.feature +43 -1
  12. data/features/rename_included_files.feature +28 -0
  13. data/lib/defmastership/batch_modifier.rb +17 -12
  14. data/lib/defmastership/change_ref_modifier.rb +89 -5
  15. data/lib/defmastership/comment_filter.rb +1 -1
  16. data/lib/defmastership/constants.rb +5 -4
  17. data/lib/defmastership/csv_formatter.rb +20 -16
  18. data/lib/defmastership/csv_formatter_body.rb +18 -15
  19. data/lib/defmastership/csv_formatter_header.rb +1 -1
  20. data/lib/defmastership/definition.rb +58 -19
  21. data/lib/defmastership/document.rb +109 -74
  22. data/lib/defmastership/matching_line.rb +17 -0
  23. data/lib/defmastership/modifier.rb +42 -0
  24. data/lib/defmastership/modifier_factory.rb +12 -0
  25. data/lib/defmastership/parsing_state.rb +15 -9
  26. data/lib/defmastership/rename_included_files_modifier.rb +172 -5
  27. data/lib/defmastership/set_join_hack.rb +11 -0
  28. data/lib/defmastership/update_def_checksum_modifier.rb +8 -13
  29. data/lib/defmastership/update_def_modifier.rb +49 -0
  30. data/lib/defmastership/update_def_version_modifier.rb +56 -15
  31. data/lib/defmastership/version.rb +1 -1
  32. data/lib/defmastership.rb +7 -17
  33. data/spec/spec_helper.rb +4 -2
  34. data/spec/unit/{defmastership → def_mastership}/batch_modifier_spec.rb +42 -39
  35. data/spec/unit/{defmastership/change_ref_line_modifier_spec.rb → def_mastership/change_ref_modifier_spec.rb} +44 -66
  36. data/spec/unit/{defmastership → def_mastership}/csv_formatter_body_spec.rb +61 -32
  37. data/spec/unit/{defmastership → def_mastership}/csv_formatter_header_spec.rb +2 -2
  38. data/spec/unit/{defmastership → def_mastership}/csv_formatter_spec.rb +81 -86
  39. data/spec/unit/{defmastership → def_mastership}/definition_parser_spec.rb +2 -2
  40. data/spec/unit/{defmastership → def_mastership}/definition_spec.rb +17 -7
  41. data/spec/unit/{defmastership → def_mastership}/document_spec.rb +108 -53
  42. data/spec/unit/def_mastership/matching_line_spec.rb +37 -0
  43. data/spec/unit/def_mastership/modifier_factory_spec.rb +37 -0
  44. data/spec/unit/def_mastership/modifier_spec.rb +83 -0
  45. data/spec/unit/{defmastership → def_mastership}/parsing_state_spec.rb +16 -16
  46. data/spec/unit/{defmastership/rename_included_files_line_modifier_spec.rb → def_mastership/rename_included_files_modifier_spec.rb} +72 -36
  47. data/spec/unit/{defmastership/comment_filter_spec.rb → def_mastership/string_spec.rb} +1 -1
  48. data/spec/unit/def_mastership/update_def_checksum_modifier_spec.rb +107 -0
  49. data/spec/unit/def_mastership/update_def_modifier_spec.rb +119 -0
  50. data/spec/unit/def_mastership/update_def_version_modifier_spec.rb +159 -0
  51. data/spec/unit/{defmastership_spec.rb → def_mastership_spec.rb} +1 -1
  52. data/tasks/console.rake +8 -0
  53. data/tasks/package.task +9 -0
  54. data/tasks/smelling_code.rake +38 -0
  55. data/tasks/test.rake +45 -0
  56. metadata +37 -145
  57. data/lib/defmastership/change_ref_line_modifier.rb +0 -82
  58. data/lib/defmastership/line_modifier_base.rb +0 -29
  59. data/lib/defmastership/modifier_base.rb +0 -29
  60. data/lib/defmastership/rename_included_files_line_modifier.rb +0 -126
  61. data/lib/defmastership/update_def_checksum_line_modifier.rb +0 -38
  62. data/lib/defmastership/update_def_version_line_modifier.rb +0 -58
  63. data/spec/unit/defmastership/change_ref_modifier_spec.rb +0 -76
  64. data/spec/unit/defmastership/rename_included_files_modifier_spec.rb +0 -67
  65. data/spec/unit/defmastership/update_def_checksum_line_modifier_spec.rb +0 -78
  66. data/spec/unit/defmastership/update_def_checksum_modifier_spec.rb +0 -75
  67. data/spec/unit/defmastership/update_def_version_line_modifier_spec.rb +0 -127
  68. data/spec/unit/defmastership/update_def_version_modifier_spec.rb +0 -80
@@ -1,13 +1,13 @@
1
1
  # Copyright (c) 2020 Jerome Arbez-Gindre
2
2
  # frozen_string_literal: true
3
3
 
4
- require('defmastership')
4
+ require('defmastership/document')
5
5
 
6
6
  RSpec.describe(DefMastership::Document) do
7
7
  subject(:document) { described_class.new }
8
8
 
9
9
  describe '.new' do
10
- it { is_expected.not_to(be(nil)) }
10
+ it { is_expected.not_to(be_nil) }
11
11
  it { is_expected.to(have_attributes(definitions: [])) }
12
12
  it { is_expected.to(have_attributes(eref: {})) }
13
13
  it { is_expected.to(have_attributes(iref: false)) }
@@ -15,16 +15,32 @@ RSpec.describe(DefMastership::Document) do
15
15
  it { is_expected.to(have_attributes(variables: {})) }
16
16
  end
17
17
 
18
+ describe '.method_missing' do
19
+ it do
20
+ expect { document.not_implemented_random_method }
21
+ .to(raise_error(NoMethodError))
22
+ end
23
+ end
24
+
25
+ describe '.respond_to_missing?' do
26
+ it { expect(document.respond_to?(:add_new_definition)).to(be(true)) }
27
+ it { expect(document.respond_to?(:not_implemented_random_method)).to(be(false)) }
28
+ end
29
+
18
30
  describe '#parse' do
19
31
  context 'with valid definitions' do
20
32
  let(:definition) { instance_double(DefMastership::Definition, 'definition') }
21
33
 
22
34
  before do
23
35
  allow(DefMastership::Definition).to(receive(:new).and_return(definition))
24
- allow(definition).to(receive(:labels).and_return(Set.new))
25
- allow(definition).to(receive(:<<).and_return(definition))
26
- allow(definition).to(receive(:add_eref).and_return(definition))
27
- allow(definition).to(receive(:add_iref).and_return(definition))
36
+ allow(definition).to(
37
+ receive_messages(
38
+ labels: Set.new,
39
+ '<<': definition,
40
+ add_eref: definition,
41
+ add_iref: definition
42
+ )
43
+ )
28
44
  end
29
45
 
30
46
  context 'when simple definition line' do
@@ -323,7 +339,7 @@ RSpec.describe(DefMastership::Document) do
323
339
  it { expect(definition).to(have_received(:add_iref).with('toto')) }
324
340
  it { expect(definition).to(have_received(:add_iref).with('tutu')) }
325
341
  it { expect(definition).to(have_received(:add_iref).with('pouet')) }
326
- it { expect(document.iref).to(eq(true)) }
342
+ it { expect(document.iref).to(be(true)) }
327
343
  end
328
344
 
329
345
  context 'when configure attributes' do
@@ -365,7 +381,7 @@ RSpec.describe(DefMastership::Document) do
365
381
 
366
382
  it do
367
383
  document.parse(input_lines)
368
- expect(document.iref).to(eq(false))
384
+ expect(document.iref).to(be(false))
369
385
  end
370
386
  end
371
387
 
@@ -401,8 +417,12 @@ RSpec.describe(DefMastership::Document) do
401
417
 
402
418
  before do
403
419
  allow(DefMastership::Definition).to(receive(:new).and_return(definition))
404
- allow(definition).to(receive(:labels).and_return(Set.new))
405
- allow(definition).to(receive(:<<).and_return(definition))
420
+ allow(definition).to(
421
+ receive_messages(
422
+ labels: Set.new,
423
+ '<<': definition
424
+ )
425
+ )
406
426
  document.parse(input_lines)
407
427
  end
408
428
 
@@ -431,6 +451,18 @@ RSpec.describe(DefMastership::Document) do
431
451
  it { expect(definition).to(have_received(:<<).with('bef {variable} aft')) }
432
452
  end
433
453
 
454
+ context 'when badly defined variable' do
455
+ let(:input_lines) do
456
+ [
457
+ ':variable:one value',
458
+ '[define, requirement, TOTO-0001]',
459
+ 'bef {variable} aft'
460
+ ]
461
+ end
462
+
463
+ it { expect(definition).to(have_received(:<<).with('bef {variable} aft')) }
464
+ end
465
+
434
466
  context 'when multiple defined variables' do
435
467
  let(:input_lines) do
436
468
  [
@@ -503,8 +535,12 @@ RSpec.describe(DefMastership::Document) do
503
535
  allow(adoc_doc).to(receive(:reader).and_return(adoc_reader))
504
536
  allow(adoc_reader).to(receive(:read_lines).and_return(input_lines))
505
537
  allow(DefMastership::Definition).to(receive(:new).and_return(definition))
506
- allow(definition).to(receive(:<<).and_return(definition))
507
- allow(definition).to(receive(:labels).and_return(Set.new))
538
+ allow(definition).to(
539
+ receive_messages(
540
+ '<<': definition,
541
+ labels: Set.new
542
+ )
543
+ )
508
544
  document.parse_file_with_preprocessor('the_file.adoc')
509
545
  end
510
546
 
@@ -522,8 +558,12 @@ RSpec.describe(DefMastership::Document) do
522
558
  end
523
559
 
524
560
  describe '#wrong_explicit_checksum?' do
525
- let(:def1) { instance_double(DefMastership::Definition, 'definition') }
526
- let(:def2) { instance_double(DefMastership::Definition, 'definition') }
561
+ let(:defs) do
562
+ [
563
+ instance_double(DefMastership::Definition, 'definition'),
564
+ instance_double(DefMastership::Definition, 'definition')
565
+ ]
566
+ end
527
567
  let(:input_lines) do
528
568
  [
529
569
  '[define, requirement, TOTO-0001]',
@@ -535,41 +575,44 @@ RSpec.describe(DefMastership::Document) do
535
575
  end
536
576
 
537
577
  before do
538
- allow(DefMastership::Definition).to(receive(:new).twice.and_return(def1, def2))
539
- allow(def1).to(receive(:labels)).and_return([])
540
- allow(def2).to(receive(:labels)).and_return([])
541
- allow(def1).to(receive(:<<).and_return(def1))
542
- allow(def2).to(receive(:<<).and_return(def2))
578
+ allow(DefMastership::Definition).to(receive(:new).twice.and_return(defs.first, defs[1]))
579
+ defs.each do |definition|
580
+ allow(definition).to(receive(:labels)).and_return([])
581
+ allow(definition).to(receive(:<<)).and_return(definition)
582
+ end
543
583
  end
544
584
 
545
585
  context 'when no wrong explicit checksum' do
546
586
  before do
547
- allow(def1).to(receive(:wrong_explicit_checksum)).and_return(nil)
548
- allow(def2).to(receive(:wrong_explicit_checksum)).and_return(nil)
587
+ defs.each { |definition| allow(definition).to(receive(:wrong_explicit_checksum)).and_return(nil) }
549
588
  document.parse(input_lines)
550
589
  document.wrong_explicit_checksum?
551
590
  end
552
591
 
553
- it { expect(def1).to(have_received(:wrong_explicit_checksum)) }
554
- it { expect(def2).to(have_received(:wrong_explicit_checksum)) }
555
- it { expect(document.wrong_explicit_checksum?).to(eq(false)) }
592
+ it { expect(defs.first).to(have_received(:wrong_explicit_checksum)) }
593
+ it { expect(defs[1]).to(have_received(:wrong_explicit_checksum)) }
594
+ it { expect(document.wrong_explicit_checksum?).to(be(false)) }
556
595
  end
557
596
 
558
597
  context 'when one req has wrong explicit checksum' do
559
598
  before do
560
- allow(def1).to(receive(:wrong_explicit_checksum)).and_return(nil)
561
- allow(def2).to(receive(:wrong_explicit_checksum)).and_return('toto')
599
+ allow(defs.first).to(receive(:wrong_explicit_checksum)).and_return('toto')
600
+ allow(defs[1]).to(receive(:wrong_explicit_checksum)).and_return(nil)
562
601
  document.parse(input_lines)
563
602
  document.wrong_explicit_checksum?
564
603
  end
565
604
 
566
- it { expect(document.wrong_explicit_checksum?).to(eq(true)) }
605
+ it { expect(document.wrong_explicit_checksum?).to(be(true)) }
567
606
  end
568
607
  end
569
608
 
570
609
  describe '#explicit_version?' do
571
- let(:def1) { instance_double(DefMastership::Definition, 'definition') }
572
- let(:def2) { instance_double(DefMastership::Definition, 'definition') }
610
+ let(:defs) do
611
+ [
612
+ instance_double(DefMastership::Definition, 'definition'),
613
+ instance_double(DefMastership::Definition, 'definition')
614
+ ]
615
+ end
573
616
  let(:input_lines) do
574
617
  [
575
618
  '[define, requirement, TOTO-0001]',
@@ -581,41 +624,45 @@ RSpec.describe(DefMastership::Document) do
581
624
  end
582
625
 
583
626
  before do
584
- allow(DefMastership::Definition).to(receive(:new).twice.and_return(def1, def2))
585
- allow(def1).to(receive(:labels)).and_return([])
586
- allow(def2).to(receive(:labels)).and_return([])
587
- allow(def1).to(receive(:<<).and_return(def1))
588
- allow(def2).to(receive(:<<).and_return(def2))
627
+ allow(DefMastership::Definition).to(receive(:new).twice.and_return(defs.first, defs[1]))
628
+ allow(defs.first).to(receive(:labels)).and_return([])
629
+ allow(defs[1]).to(receive(:labels)).and_return([])
630
+ allow(defs.first).to(receive(:<<).and_return(defs.first))
631
+ allow(defs[1]).to(receive(:<<).and_return(defs[1]))
589
632
  end
590
633
 
591
634
  context 'when no explicit version' do
592
635
  before do
593
- allow(def1).to(receive(:explicit_version)).and_return(nil)
594
- allow(def2).to(receive(:explicit_version)).and_return(nil)
636
+ allow(defs.first).to(receive(:explicit_version)).and_return(nil)
637
+ allow(defs[1]).to(receive(:explicit_version)).and_return(nil)
595
638
  document.parse(input_lines)
596
639
  document.explicit_version?
597
640
  end
598
641
 
599
- it { expect(def1).to(have_received(:explicit_version)) }
600
- it { expect(def2).to(have_received(:explicit_version)) }
601
- it { expect(document.explicit_version?).to(eq(false)) }
642
+ it { expect(defs.first).to(have_received(:explicit_version)) }
643
+ it { expect(defs[1]).to(have_received(:explicit_version)) }
644
+ it { expect(document.explicit_version?).to(be(false)) }
602
645
  end
603
646
 
604
647
  context 'when one req has explicit version' do
605
648
  before do
606
- allow(def1).to(receive(:explicit_version)).and_return(nil)
607
- allow(def2).to(receive(:explicit_version)).and_return('toto')
649
+ allow(defs.first).to(receive(:explicit_version)).and_return('toto')
650
+ allow(defs[1]).to(receive(:explicit_version)).and_return(nil)
608
651
  document.parse(input_lines)
609
652
  document.explicit_version?
610
653
  end
611
654
 
612
- it { expect(document.explicit_version?).to(eq(true)) }
655
+ it { expect(document.explicit_version?).to(be(true)) }
613
656
  end
614
657
  end
615
658
 
616
659
  describe '#ref_to_def?' do
617
- let(:def1) { instance_double(DefMastership::Definition, 'definition') }
618
- let(:def2) { instance_double(DefMastership::Definition, 'definition') }
660
+ let(:definitions) do
661
+ [
662
+ instance_double(DefMastership::Definition, 'def1'),
663
+ instance_double(DefMastership::Definition, 'def2')
664
+ ]
665
+ end
619
666
  let(:input_lines) do
620
667
  [
621
668
  '[define, requirement, TOTO-0001]',
@@ -627,17 +674,25 @@ RSpec.describe(DefMastership::Document) do
627
674
  end
628
675
 
629
676
  before do
630
- allow(DefMastership::Definition).to(receive(:new).twice.and_return(def1, def2))
631
- allow(def1).to(receive(:labels)).and_return([])
632
- allow(def2).to(receive(:labels)).and_return([])
633
- allow(def1).to(receive(:<<).and_return(def1))
634
- allow(def2).to(receive(:<<).and_return(def2))
635
- allow(def1).to(receive(:reference).and_return('TOTO-0001'))
636
- allow(def2).to(receive(:reference).and_return('TOTO-0002'))
677
+ allow(DefMastership::Definition).to(receive(:new).twice.and_return(definitions.first, definitions[1]))
678
+ allow(definitions.first).to(
679
+ receive_messages(
680
+ labels: [],
681
+ '<<': definitions.first,
682
+ reference: 'TOTO-0001'
683
+ )
684
+ )
685
+ allow(definitions[1]).to(
686
+ receive_messages(
687
+ labels: [],
688
+ '<<': definitions[1],
689
+ reference: 'TOTO-0002'
690
+ )
691
+ )
637
692
  document.parse(input_lines)
638
693
  end
639
694
 
640
- it { expect(document.ref_to_def('TOTO-0001')).to(eq(def1)) }
641
- it { expect(document.ref_to_def('TOTO-0002')).to(eq(def2)) }
695
+ it { expect(document.ref_to_def('TOTO-0001')).to(eq(definitions.first)) }
696
+ it { expect(document.ref_to_def('TOTO-0002')).to(eq(definitions[1])) }
642
697
  end
643
698
  end
@@ -0,0 +1,37 @@
1
+ # Copyright (c) 2024 Jerome Arbez-Gindre
2
+ # frozen_string_literal: true
3
+
4
+ require('defmastership/matching_line')
5
+
6
+ RSpec.describe(DefMastership::MatchingLine) do
7
+ describe '.new' do
8
+ subject(:matching_line) do
9
+ described_class.new(:a_match, :a_line)
10
+ end
11
+
12
+ it { is_expected.not_to(be_nil) }
13
+ it { is_expected.to(have_attributes(match: :a_match)) }
14
+ it { is_expected.to(have_attributes(line: :a_line)) }
15
+ end
16
+
17
+ describe '#[]' do
18
+ subject(:matching_line) do
19
+ described_class.new(match, :a_line)
20
+ end
21
+
22
+ let(:match) { instance_double(Hash, 'match') }
23
+
24
+ before do
25
+ allow(match).to(receive(:[]).with(:whatever).and_return('Whatever'))
26
+ allow(match).to(receive(:[]).with(:line).and_return(nil))
27
+ end
28
+
29
+ it do
30
+ matching_line[:whatever]
31
+ expect(match).to(have_received(:[]).with(:whatever))
32
+ end
33
+
34
+ it { expect(matching_line[:whatever]).to(eq('Whatever')) }
35
+ it { expect(matching_line[:line]).to(eq(:a_line)) }
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ # Copyright (c) 2023 Jerome Arbez-Gindre
2
+ # frozen_string_literal: true
3
+
4
+ require('defmastership/modifier_factory')
5
+
6
+ module DefMastership
7
+ class TotoModifier
8
+ include Modifier
9
+ end
10
+ end
11
+
12
+ RSpec.describe(DefMastership::ModifierFactory) do
13
+ describe('.from_config') do
14
+ let(:toto) { instance_double(DefMastership::TotoModifier, 'toto') }
15
+ let(:toto_config) { { type: 'toto', config: { p: 'whatever' } } }
16
+ let(:tutu) { instance_double(DefMastership::TotoModifier, 'tutu') }
17
+ let(:tutu_config) { { type: 'tu_tu', config: { p: 'whatever' } } }
18
+
19
+ before do
20
+ allow(DefMastership::TotoModifier).to(receive(:new).with(toto_config[:config]).and_return(toto))
21
+ allow(DefMastership::TuTuModifier).to(receive(:new).with(tutu_config[:config]).and_return(tutu))
22
+ end
23
+
24
+ it { expect(described_class.from_config(toto_config)).to(be(toto)) }
25
+ it { expect(described_class.from_config(tutu_config)).to(be(tutu)) }
26
+
27
+ it do
28
+ described_class.from_config(toto_config)
29
+ expect(DefMastership::TotoModifier).to(have_received(:new).with(toto_config[:config]))
30
+ end
31
+
32
+ it do
33
+ described_class.from_config(tutu_config)
34
+ expect(DefMastership::TuTuModifier).to(have_received(:new).with(tutu_config[:config]))
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,83 @@
1
+ # Copyright (c) 2023 Jerome Arbez-Gindre
2
+ # frozen_string_literal: true
3
+
4
+ require('defmastership/modifier')
5
+
6
+ class DummyclassParrent
7
+ def respond_to_missing?(method_name, *_)
8
+ return true if method_name == :ploup
9
+
10
+ false
11
+ end
12
+ end
13
+
14
+ class DummyClass < DummyclassParrent
15
+ include DefMastership::Modifier
16
+
17
+ def self.replacement_methods
18
+ %i[replace_pouet_by_foo replace_foo_by_zoo]
19
+ end
20
+
21
+ def self.default_config
22
+ { something: :default }
23
+ end
24
+
25
+ def initialize(config)
26
+ setup_modifier_module(config)
27
+ super()
28
+ end
29
+
30
+ def replace_pouet_by_foo(line)
31
+ line.gsub('pouet', 'foo')
32
+ end
33
+
34
+ def replace_foo_by_zoo(line)
35
+ line.gsub('foo', 'zoo')
36
+ end
37
+ end
38
+
39
+ class BadDummyClass < DummyclassParrent
40
+ include DefMastership::Modifier
41
+ end
42
+
43
+ RSpec.describe(DefMastership::Modifier) do
44
+ subject(:modifier) { DummyClass.new({}) }
45
+
46
+ describe '.new' do
47
+ it { is_expected.not_to(be_nil) }
48
+ it { is_expected.to(have_attributes(config: { something: :default })) }
49
+ it { is_expected.to(have_attributes(changes: [])) }
50
+ end
51
+
52
+ context 'when want to use config smoothly' do
53
+ subject(:modifier) { DummyClass.new(plop: 'Whatever', something: :not_default) }
54
+
55
+ it { is_expected.to(have_attributes(config: { plop: 'Whatever', something: :not_default })) }
56
+ it { is_expected.to(have_attributes(plop: 'Whatever')) }
57
+ it { is_expected.not_to(respond_to(:pleeep)) }
58
+ it { is_expected.to(respond_to(:ploup)) }
59
+
60
+ it do
61
+ expect { modifier.plooooop }
62
+ .to(raise_error(NoMethodError))
63
+ end
64
+ end
65
+
66
+ describe '#apply_to_all' do
67
+ it do
68
+ texts = { first: "pouet\ntoto\npouet", second: "toto\npouet\ntoto" }
69
+
70
+ expect(modifier.apply_to_all(texts, :replace_pouet_by_foo))
71
+ .to(eq({ first: "foo\ntoto\nfoo", second: "toto\nfoo\ntoto" }))
72
+ end
73
+ end
74
+
75
+ describe '#do_modifications' do
76
+ it do
77
+ adoc_sources = { first: "pouet\ntoto\npouet", second: "toto\npouet\ntoto" }
78
+
79
+ expect(modifier.do_modifications(adoc_sources))
80
+ .to(eq({ first: "zoo\ntoto\nzoo", second: "toto\nzoo\ntoto" }))
81
+ end
82
+ end
83
+ end
@@ -1,7 +1,7 @@
1
1
  # Copyright (c) 2020 Jerome Arbez-Gindre
2
2
  # frozen_string_literal: true
3
3
 
4
- require('defmastership')
4
+ require('defmastership/parsing_state')
5
5
 
6
6
  RSpec.describe(DefMastership::ParsingState) do
7
7
  subject(:parsing_state) do
@@ -9,29 +9,29 @@ RSpec.describe(DefMastership::ParsingState) do
9
9
  end
10
10
 
11
11
  describe '.new' do
12
- it { is_expected.not_to(be(nil)) }
12
+ it { is_expected.not_to(be_nil) }
13
13
  end
14
14
 
15
15
  describe '#enabled_with?' do
16
16
  context 'when single line commment' do
17
- it { expect(parsing_state.enabled?("//whatever\n")).to(eq(false)) }
17
+ it { expect(parsing_state.enabled?("//whatever\n")).to(be(false)) }
18
18
  end
19
19
 
20
20
  context 'when starting' do
21
- it { expect(parsing_state.enabled?("whatever\n")).to(eq(true)) }
22
- it { expect(parsing_state.enabled?("----\n")).to(eq(false)) }
23
- it { expect(parsing_state.enabled?("....\n")).to(eq(false)) }
24
- it { expect(parsing_state.enabled?("////\n")).to(eq(false)) }
25
- it { expect(parsing_state.enabled?('....')).to(eq(false)) }
21
+ it { expect(parsing_state.enabled?("whatever\n")).to(be(true)) }
22
+ it { expect(parsing_state.enabled?("----\n")).to(be(false)) }
23
+ it { expect(parsing_state.enabled?("....\n")).to(be(false)) }
24
+ it { expect(parsing_state.enabled?("////\n")).to(be(false)) }
25
+ it { expect(parsing_state.enabled?('....')).to(be(false)) }
26
26
  end
27
27
 
28
28
  context 'when disabled' do
29
29
  before { parsing_state.enabled?("----\n") }
30
30
 
31
- it { expect(parsing_state.enabled?("whatever\n")).to(eq(false)) }
32
- it { expect(parsing_state.enabled?("----\n")).to(eq(true)) }
33
- it { expect(parsing_state.enabled?("....\n")).to(eq(false)) }
34
- it { expect(parsing_state.enabled?("////\n")).to(eq(false)) }
31
+ it { expect(parsing_state.enabled?("whatever\n")).to(be(false)) }
32
+ it { expect(parsing_state.enabled?("----\n")).to(be(true)) }
33
+ it { expect(parsing_state.enabled?("....\n")).to(be(false)) }
34
+ it { expect(parsing_state.enabled?("////\n")).to(be(false)) }
35
35
  end
36
36
 
37
37
  context 'with intricated disables starting with "...."' do
@@ -39,8 +39,8 @@ RSpec.describe(DefMastership::ParsingState) do
39
39
  ["....\n", "----\n", "whatever\n"].each { |line| parsing_state.enabled?(line) }
40
40
  end
41
41
 
42
- it { expect(parsing_state.enabled?("----\n")).to(eq(false)) }
43
- it { expect(parsing_state.enabled?("....\n")).to(eq(true)) }
42
+ it { expect(parsing_state.enabled?("----\n")).to(be(false)) }
43
+ it { expect(parsing_state.enabled?("....\n")).to(be(true)) }
44
44
  end
45
45
 
46
46
  context 'with intricated disables starting with "----"' do
@@ -48,7 +48,7 @@ RSpec.describe(DefMastership::ParsingState) do
48
48
  ["....\n", "----\n", "whatever\n"].each { |line| parsing_state.enabled?(line) }
49
49
  end
50
50
 
51
- it { expect(parsing_state.enabled?("....\n")).to(eq(true)) }
51
+ it { expect(parsing_state.enabled?("....\n")).to(be(true)) }
52
52
  end
53
53
 
54
54
  context 'with intricated disables starting with "////"' do
@@ -56,7 +56,7 @@ RSpec.describe(DefMastership::ParsingState) do
56
56
  ["////\n", "----\n", "whatever\n"].each { |line| parsing_state.enabled?(line) }
57
57
  end
58
58
 
59
- it { expect(parsing_state.enabled?("////\n")).to(eq(true)) }
59
+ it { expect(parsing_state.enabled?("////\n")).to(be(true)) }
60
60
  end
61
61
  end
62
62
  end