zapata 0.1.6 → 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.
Files changed (83) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +7 -0
  3. data/.rspec +1 -0
  4. data/.rubocop.yml +35 -0
  5. data/.travis.yml +13 -19
  6. data/Appraisals +11 -0
  7. data/Gemfile +2 -0
  8. data/README.md +1 -2
  9. data/Rakefile +2 -1
  10. data/bin/zapata +6 -29
  11. data/gemfiles/5.2.gemfile +14 -0
  12. data/gemfiles/6.0.gemfile +14 -0
  13. data/lib/zapata.rb +22 -22
  14. data/lib/zapata/analyst.rb +2 -0
  15. data/lib/zapata/cli.rb +23 -0
  16. data/lib/zapata/core.rb +11 -0
  17. data/lib/zapata/core/collector.rb +2 -0
  18. data/lib/zapata/core/loader.rb +6 -4
  19. data/lib/zapata/core/reader.rb +2 -0
  20. data/lib/zapata/core/writer.rb +2 -0
  21. data/lib/zapata/db.rb +2 -0
  22. data/lib/zapata/diver.rb +32 -28
  23. data/lib/zapata/predictor.rb +10 -0
  24. data/lib/zapata/predictor/args.rb +2 -0
  25. data/lib/zapata/predictor/chooser.rb +2 -0
  26. data/lib/zapata/predictor/value.rb +7 -3
  27. data/lib/zapata/primitive.rb +28 -0
  28. data/lib/zapata/primitive/arg.rb +2 -0
  29. data/lib/zapata/primitive/array.rb +2 -0
  30. data/lib/zapata/primitive/base.rb +6 -4
  31. data/lib/zapata/primitive/basic.rb +2 -0
  32. data/lib/zapata/primitive/casgn.rb +2 -0
  33. data/lib/zapata/primitive/const.rb +2 -0
  34. data/lib/zapata/primitive/const_send.rb +2 -0
  35. data/lib/zapata/primitive/def.rb +2 -0
  36. data/lib/zapata/primitive/defs.rb +3 -1
  37. data/lib/zapata/primitive/hash.rb +2 -0
  38. data/lib/zapata/primitive/ivar.rb +2 -0
  39. data/lib/zapata/primitive/klass.rb +4 -2
  40. data/lib/zapata/primitive/lvar.rb +2 -0
  41. data/lib/zapata/primitive/missing.rb +2 -0
  42. data/lib/zapata/primitive/modul.rb +2 -0
  43. data/lib/zapata/primitive/nil.rb +2 -0
  44. data/lib/zapata/primitive/optarg.rb +2 -0
  45. data/lib/zapata/primitive/raw.rb +2 -0
  46. data/lib/zapata/primitive/send.rb +4 -1
  47. data/lib/zapata/primitive/sklass.rb +3 -1
  48. data/lib/zapata/primitive/var.rb +2 -0
  49. data/lib/zapata/printer.rb +2 -1
  50. data/lib/zapata/rzpec/runner.rb +3 -1
  51. data/lib/zapata/rzpec/writer.rb +5 -3
  52. data/lib/zapata/version.rb +3 -1
  53. data/spec/array_spec.rb +6 -6
  54. data/spec/definition_spec.rb +5 -5
  55. data/spec/generation_spec.rb +2 -36
  56. data/spec/hash_spec.rb +8 -8
  57. data/spec/klass_types_spec.rb +6 -6
  58. data/spec/send_spec.rb +6 -6
  59. data/spec/simple_types_spec.rb +6 -6
  60. data/spec/spec_helper.rb +18 -76
  61. data/spec/support/rails_test_app/app/assets/config/manifest.js +3 -0
  62. data/spec/support/rails_test_app/app/models/robot_to_test.rb +4 -4
  63. data/spec/support/rails_test_app/app/models/test_send.rb +1 -1
  64. data/spec/support/rails_test_app/config.ru +1 -1
  65. data/spec/support/rails_test_app/config/initializers/cookies_serializer.rb +1 -1
  66. data/spec/support/rails_test_app/spec/models/robot_to_test_spec.rb +2 -2
  67. data/spec/support/rails_test_app/spec/models/test_hash_spec.rb +1 -1
  68. data/spec/support/rails_test_app/spec/rails_helper.rb +3 -3
  69. data/spec/support/rails_test_app/spec/spec_helper.rb +58 -60
  70. data/zapata.gemspec +18 -18
  71. metadata +58 -101
  72. data/spec/support/rails_test_app/.gitignore +0 -16
  73. data/spec/support/rails_test_app/.rspec +0 -3
  74. data/spec/support/rails_test_app/Gemfile +0 -49
  75. data/spec/support/rails_test_app/test/controllers/.keep +0 -0
  76. data/spec/support/rails_test_app/test/fixtures/.keep +0 -0
  77. data/spec/support/rails_test_app/test/helpers/.keep +0 -0
  78. data/spec/support/rails_test_app/test/integration/.keep +0 -0
  79. data/spec/support/rails_test_app/test/mailers/.keep +0 -0
  80. data/spec/support/rails_test_app/test/models/.keep +0 -0
  81. data/spec/support/rails_test_app/test/test_helper.rb +0 -13
  82. data/spec/support/rails_test_app/vendor/assets/javascripts/.keep +0 -0
  83. data/spec/support/rails_test_app/vendor/assets/stylesheets/.keep +0 -0
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  describe Zapata::Revolutionist do
4
4
  before(:all) do
@@ -6,38 +6,38 @@ describe Zapata::Revolutionist do
6
6
  end
7
7
 
8
8
  it '#test_in_arg' do
9
- has_block('#test_in_arg', %Q{
9
+ has_block('#test_in_arg', %{
10
10
  expect(test_hash.test_in_arg({ 1 => :one, TestHash => 2.718 })).to eq({ 1 => :one, TestHash => 2.718 })
11
11
  })
12
12
  end
13
13
 
14
14
  it '#test_nested_one_level' do
15
- has_block('#test_nested_one_level', %Q{
15
+ has_block('#test_nested_one_level', %{
16
16
  expect(test_hash.test_nested_one_level({ first_level: { 1 => :one, TestHash => 2.718 } })).to eq({ first_level: { 1 => :one, TestHash => 2.718 } })
17
17
  })
18
18
  end
19
19
 
20
20
  it '#test_nested_two_levels' do
21
- has_block('#test_nested_two_levels', %Q{
21
+ has_block('#test_nested_two_levels', %{
22
22
  expect(test_hash.test_nested_two_levels({ second_level: { first_level: { 1 => :one, TestHash => 2.718 } } })).to eq({ second_level: { first_level: { 1 => :one, TestHash => 2.718 } } })
23
23
  })
24
24
  end
25
25
 
26
26
  it '#test_nested_three_levels' do
27
- has_block('#test_nested_three_levels', %Q{
27
+ has_block('#test_nested_three_levels', %{
28
28
  expect(test_hash.test_nested_three_levels({ third_level: { second_level: { first_level: { 1 => :one, TestHash => 2.718 } } } })).to eq({ third_level: { second_level: { first_level: { 1 => :one, TestHash => 2.718 } } } })
29
29
  })
30
30
  end
31
31
 
32
32
  it '#test_key_as_another_hash' do
33
- has_block('#test_key_as_another_hash', %Q{
33
+ has_block('#test_key_as_another_hash', %{
34
34
  expect(test_hash.test_key_as_another_hash({ { 1 => :one, TestHash => 2.718 } => :ratm })).to eq({ { 1 => :one, TestHash => 2.718 } => :ratm })
35
35
  })
36
36
  end
37
37
 
38
38
  it '#test_keys_are_symbols' do
39
- has_block('#test_keys_are_symbols', %Q{
40
- expect(test_hash.test_keys_are_symbols({ this: 'should', be: 'pretty' })).to eq({ this: 'should', be: 'pretty' })
39
+ has_block('#test_keys_are_symbols', %{
40
+ expect(test_hash.test_keys_are_symbols({ this: 'should', be: 'pretty' })).to eq({ be: 'pretty', this: 'should' })
41
41
  })
42
42
  end
43
43
  end
@@ -1,10 +1,10 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  describe Zapata::Revolutionist do
4
4
  context 'it should work with' do
5
5
  it 'bare module' do
6
6
  generated = exec_generation('app/models/testing_module/bare.rb')
7
- expected = expected(%Q{require 'rails_helper'
7
+ expected = expected(%{require 'rails_helper'
8
8
 
9
9
  describe TestingModule::Bare do
10
10
  let(:bare) do
@@ -17,7 +17,7 @@ describe Zapata::Revolutionist do
17
17
 
18
18
  it 'nested module' do
19
19
  generated = exec_generation('app/models/testing_module/nested/inside.rb')
20
- expected = expected(%Q{require 'rails_helper'
20
+ expected = expected(%{require 'rails_helper'
21
21
 
22
22
  describe TestingModule::Nested::Inside do
23
23
  let(:inside) do
@@ -34,19 +34,19 @@ describe Zapata::Revolutionist do
34
34
  end
35
35
 
36
36
  it '#defined_with_self' do
37
- has_block('#defined_with_self', %Q{
37
+ has_block('#defined_with_self', %{
38
38
  expect(TestingModule::KlassMethods.defined_with_self(5)).to eq(5)
39
39
  })
40
40
  end
41
41
 
42
42
  it '#defined_with_back_back_self' do
43
- has_block('#defined_with_back_back_self', %Q{
43
+ has_block('#defined_with_back_back_self', %{
44
44
  expect(TestingModule::KlassMethods.defined_with_back_back_self(5)).to eq(5)
45
45
  })
46
46
  end
47
47
 
48
48
  it '#back_to_public_defined_with_self' do
49
- has_block('#back_to_public_defined_with_self', %Q{
49
+ has_block('#back_to_public_defined_with_self', %{
50
50
  expect(TestingModule::KlassMethods.back_to_public_defined_with_self(5)).to eq(5)
51
51
  })
52
52
  end
@@ -1,4 +1,4 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  describe Zapata::Revolutionist do
4
4
  before(:all) do
@@ -6,7 +6,7 @@ describe Zapata::Revolutionist do
6
6
  end
7
7
 
8
8
  it '#another_method_as_arg' do
9
- has_block('#another_method_as_arg', %Q{
9
+ has_block('#another_method_as_arg', %{
10
10
  expect(test_send.another_method_as_arg('Help method')).to eq('Help method')
11
11
  })
12
12
  end
@@ -30,25 +30,25 @@ describe Zapata::Revolutionist do
30
30
  # end
31
31
 
32
32
  it '#to_another_object' do
33
- has_block('#to_another_object', %Q{
33
+ has_block('#to_another_object', %{
34
34
  expect(test_send.to_another_object(AnotherObject.my_name)).to eq('Domas')
35
35
  })
36
36
  end
37
37
 
38
38
  it '#to_another_object_with_params' do
39
- has_block('#to_another_object_with_params', %Q{
39
+ has_block('#to_another_object_with_params', %{
40
40
  expect(test_send.to_another_object_with_params(AnotherObject.send_with_params(12))).to eq('Id was 12')
41
41
  })
42
42
  end
43
43
 
44
44
  it '#not_explicit_with_params' do
45
- has_block('#not_explicit_with_params', %Q{
45
+ has_block('#not_explicit_with_params', %{
46
46
  expect(test_send.not_explicit_with_params('Could you find it?')).to eq('Could you find it?')
47
47
  })
48
48
  end
49
49
 
50
50
  it '#fail_to_understand' do
51
- has_block('#fail_to_understand', %Q{
51
+ has_block('#fail_to_understand', %{
52
52
  expect(test_send.fail_to_understand('Missing "failure"')).to eq('Missing "failure"')
53
53
  })
54
54
  end
@@ -1,10 +1,10 @@
1
- require 'spec_helper'
1
+ # frozen_string_literal: true
2
2
 
3
3
  describe Zapata::Revolutionist do
4
4
  context 'it should work with' do
5
5
  it 'ints' do
6
6
  generated = exec_generation('app/models/test_int.rb')
7
- expected = expected(%Q{require 'rails_helper'
7
+ expected = expected(%{require 'rails_helper'
8
8
 
9
9
  describe TestInt do
10
10
  let(:test_int) do
@@ -21,7 +21,7 @@ describe Zapata::Revolutionist do
21
21
 
22
22
  it 'symbols' do
23
23
  generated = exec_generation('app/models/test_sym.rb')
24
- expected = expected(%Q{require 'rails_helper'
24
+ expected = expected(%{require 'rails_helper'
25
25
 
26
26
  describe TestSym do
27
27
  let(:test_sym) do
@@ -38,7 +38,7 @@ describe Zapata::Revolutionist do
38
38
 
39
39
  it 'strings' do
40
40
  generated = exec_generation('app/models/test_str.rb')
41
- expected = expected(%Q{require 'rails_helper'
41
+ expected = expected(%{require 'rails_helper'
42
42
 
43
43
  describe TestStr do
44
44
  let(:test_str) do
@@ -55,7 +55,7 @@ describe Zapata::Revolutionist do
55
55
 
56
56
  it 'floats' do
57
57
  generated = exec_generation('app/models/test_float.rb')
58
- expected = expected(%Q{require 'rails_helper'
58
+ expected = expected(%{require 'rails_helper'
59
59
 
60
60
  describe TestFloat do
61
61
  let(:test_float) do
@@ -72,7 +72,7 @@ describe Zapata::Revolutionist do
72
72
 
73
73
  it 'consts' do
74
74
  generated = exec_generation('app/models/test_const.rb')
75
- expected = expected(%Q{require 'rails_helper'
75
+ expected = expected(%{require 'rails_helper'
76
76
 
77
77
  describe TestConst do
78
78
  let(:test_const) do
@@ -1,90 +1,32 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'coveralls'
4
+
2
5
  Coveralls.wear!
3
6
 
4
7
  require 'zapata'
5
8
 
6
- # This file was generated by the `rspec --init` command. Conventionally, all
7
- # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
8
- # The generated `.rspec` file contains `--require spec_helper` which will cause this
9
- # file to always be loaded, without a need to explicitly require it in any files.
10
- #
11
- # Given that it is always loaded, you are encouraged to keep this file as
12
- # light-weight as possible. Requiring heavyweight dependencies from this file
13
- # will add to the boot time of your test suite on EVERY test run, even for an
14
- # individual file that may not need all of that loaded. Instead, make a
15
- # separate helper file that requires this one and then use it only in the specs
16
- # that actually need it.
17
- #
18
- # The `.rspec` file also contains a few flags that are not defaults but that
19
- # users commonly want.
20
- #
21
- # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
22
9
  RSpec.configure do |config|
23
- # The settings below are suggested to provide a good initial experience
24
- # with RSpec, but feel free to customize to your heart's content.
25
- =begin
26
- # These two settings work together to allow you to limit a spec run
27
- # to individual examples or groups you care about by tagging them with
28
- # `:focus` metadata. When nothing is tagged with `:focus`, all examples
29
- # get run.
30
- config.filter_run :focus
31
- config.run_all_when_everything_filtered = true
32
-
33
- # Many RSpec users commonly either run the entire suite or an individual
34
- # file, and it's useful to allow more verbose output when running an
35
- # individual spec file.
36
- if config.files_to_run.one?
37
- # Use the documentation formatter for detailed output,
38
- # unless a formatter has already been configured
39
- # (e.g. via a command-line flag).
40
- config.default_formatter = 'doc'
41
- end
42
-
43
- # Print the 10 slowest examples and example groups at the
44
- # end of the spec run, to help surface which specs are running
45
- # particularly slow.
46
- config.profile_examples = 10
47
-
48
- # Run specs in random order to surface order dependencies. If you find an
49
- # order dependency and want to debug it, you can fix the order by providing
50
- # the seed, which is printed after each run.
51
- # --seed 1234
52
- config.order = :random
53
-
54
- # Seed global randomization in this process using the `--seed` CLI option.
55
- # Setting this allows you to use `--seed` to deterministically reproduce
56
- # test failures related to randomization by passing the same `--seed` value
57
- # as the one that triggered the failure.
58
- Kernel.srand config.seed
10
+ # Enable flags like --only-failures and --next-failure
11
+ config.example_status_persistence_file_path = '.rspec_status'
59
12
 
60
- # rspec-expectations config goes here. You can use an alternate
61
- # assertion/expectation library such as wrong or the stdlib/minitest
62
- # assertions if you prefer.
63
- config.expect_with :rspec do |expectations|
64
- # Enable only the newer, non-monkey-patching expect syntax.
65
- # For more details, see:
66
- # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
67
- expectations.syntax = :expect
13
+ config.expect_with :rspec do |c|
14
+ c.syntax = :expect
68
15
  end
69
-
70
- # rspec-mocks config goes here. You can use an alternate test double
71
- # library (such as bogus or mocha) by changing the `mock_with` option here.
72
- config.mock_with :rspec do |mocks|
73
- # Enable only the newer, non-monkey-patching expect syntax.
74
- # For more details, see:
75
- # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
76
- mocks.syntax = :expect
77
-
78
- # Prevents you from mocking or stubbing a method that does not exist on
79
- # a real object. This is generally recommended.
80
- mocks.verify_partial_doubles = true
81
- end
82
- =end
83
16
  end
84
17
 
85
18
  # Helper methods
86
19
  RAILS_TEST_APP_DIR = "#{Dir.pwd}/spec/support/rails_test_app"
87
20
 
21
+ def execution_output(command)
22
+ stdout = Bundler.with_clean_env do
23
+ Open3.pipeline_r(
24
+ command
25
+ )
26
+ end
27
+ stdout.first.readlines
28
+ end
29
+
88
30
  def clean(string)
89
31
  string.split(/\n/).map(&:strip).join("\n")
90
32
  end
@@ -98,7 +40,7 @@ def expected(code)
98
40
  end
99
41
 
100
42
  def exec_generation(generate_for)
101
- stdin, stdout, stderr = Bundler.with_clean_env do
43
+ _, stdout, stderr = Bundler.with_clean_env do
102
44
  Open3.popen3(
103
45
  "cd #{RAILS_TEST_APP_DIR} && bundle exec zapata generate #{generate_for} -s"
104
46
  )
@@ -107,7 +49,7 @@ def exec_generation(generate_for)
107
49
  output = stdout.readlines
108
50
  begin
109
51
  generated_filename = output.last.match(/File\ (.+)\ was/)[1]
110
- rescue
52
+ rescue StandardError
111
53
  raise "Did not get the message that file was generated. Got this instead:
112
54
  STDOUT: #{output}
113
55
  STDERR: #{stderr.readlines}"
@@ -0,0 +1,3 @@
1
+ //= link_tree ../images
2
+ //= link_directory ../javascripts .js
3
+ //= link_directory ../stylesheets .css
@@ -1,5 +1,5 @@
1
1
  class RobotToTest
2
- def initialize(human_name, cv)
2
+ def initialize(human_name, _cv)
3
3
  @name = robot_name(human_name)
4
4
  end
5
5
 
@@ -11,7 +11,7 @@ class RobotToTest
11
11
  { planets: planets }
12
12
  end
13
13
 
14
- def nested_fun_objects(fun_objects)
14
+ def nested_fun_objects(_fun_objects)
15
15
  'It was fun'
16
16
  end
17
17
 
@@ -26,7 +26,7 @@ class RobotToTest
26
26
  end
27
27
 
28
28
  def fun_objects
29
- [%i(array in array), { hash: nested_hash }]
29
+ [%i[array in array], { hash: nested_hash }]
30
30
  end
31
31
 
32
32
  def nested_hash
@@ -34,7 +34,7 @@ class RobotToTest
34
34
  end
35
35
 
36
36
  def array
37
- %w(array)
37
+ %w[array]
38
38
  end
39
39
  end
40
40
 
@@ -49,7 +49,7 @@ class TestSend
49
49
  1 + 3
50
50
  end
51
51
 
52
- def not_explicit(name)
52
+ def not_explicit(_name)
53
53
  'Could you find it?'
54
54
  end
55
55
 
@@ -1,4 +1,4 @@
1
1
  # This file is used by Rack-based servers to start the application.
2
2
 
3
- require ::File.expand_path('../config/environment', __FILE__)
3
+ require ::File.expand_path('../config/environment', __FILE__)
4
4
  run Rails.application
@@ -1,3 +1,3 @@
1
1
  # Be sure to restart your server when you modify this file.
2
2
 
3
- Rails.application.config.action_dispatch.cookies_serializer = :json
3
+ Rails.application.config.action_dispatch.cookies_serializer = :json
@@ -2,7 +2,7 @@ require 'rails_helper'
2
2
 
3
3
  describe RobotToTest do
4
4
  let(:robot_to_test) do
5
- RobotToTest.new('Emiliano', { planets: ['Mars', Human.home] })
5
+ RobotToTest.new('Emiliano', planets: ['Mars', Human.home])
6
6
  end
7
7
 
8
8
  it '#robot_name' do
@@ -10,7 +10,7 @@ describe RobotToTest do
10
10
  end
11
11
 
12
12
  it '#cv' do
13
- expect(robot_to_test.cv).to eq({ planets: ['Mars', 'Earth'] })
13
+ expect(robot_to_test.cv).to eq(planets: %w(Mars Earth))
14
14
  end
15
15
 
16
16
  it '#nested_fun_objects' do
@@ -26,6 +26,6 @@ describe TestHash do
26
26
  end
27
27
 
28
28
  it '#test_keys_are_symbols' do
29
- expect(test_hash.test_keys_are_symbols({ this: 'should', be: 'pretty' })).to eq({ this: 'should', be: 'pretty' })
29
+ expect(test_hash.test_keys_are_symbols({ this: 'should', be: 'pretty' })).to eq({ be: 'pretty', this: 'should' })
30
30
  end
31
31
  end
@@ -1,7 +1,7 @@
1
1
  # This file is copied to spec/ when you run 'rails generate rspec:install'
2
- ENV["RAILS_ENV"] ||= 'test'
2
+ ENV['RAILS_ENV'] ||= 'test'
3
3
  require 'spec_helper'
4
- require File.expand_path("../../config/environment", __FILE__)
4
+ require File.expand_path('../../config/environment', __FILE__)
5
5
  require 'rspec/rails'
6
6
 
7
7
  # Requires supporting ruby files with custom matchers and macros, etc, in
@@ -11,7 +11,7 @@ require 'rspec/rails'
11
11
  # run twice. It is recommended that you do not name files matching this glob to
12
12
  # end with _spec.rb. You can configure this pattern with the --pattern
13
13
  # option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
14
- Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
14
+ Dir[Rails.root.join('spec/support/**/*.rb')].each { |f| require f }
15
15
 
16
16
  # Checks for pending migrations before tests are run.
17
17
  # If you are not using ActiveRecord, you can remove this line.
@@ -15,64 +15,62 @@
15
15
  #
16
16
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
17
17
  RSpec.configure do |config|
18
- # The settings below are suggested to provide a good initial experience
19
- # with RSpec, but feel free to customize to your heart's content.
20
- =begin
21
- # These two settings work together to allow you to limit a spec run
22
- # to individual examples or groups you care about by tagging them with
23
- # `:focus` metadata. When nothing is tagged with `:focus`, all examples
24
- # get run.
25
- config.filter_run :focus
26
- config.run_all_when_everything_filtered = true
27
-
28
- # Many RSpec users commonly either run the entire suite or an individual
29
- # file, and it's useful to allow more verbose output when running an
30
- # individual spec file.
31
- if config.files_to_run.one?
32
- # Use the documentation formatter for detailed output,
33
- # unless a formatter has already been configured
34
- # (e.g. via a command-line flag).
35
- config.default_formatter = 'doc'
36
- end
37
-
38
- # Print the 10 slowest examples and example groups at the
39
- # end of the spec run, to help surface which specs are running
40
- # particularly slow.
41
- config.profile_examples = 10
42
-
43
- # Run specs in random order to surface order dependencies. If you find an
44
- # order dependency and want to debug it, you can fix the order by providing
45
- # the seed, which is printed after each run.
46
- # --seed 1234
47
- config.order = :random
48
-
49
- # Seed global randomization in this process using the `--seed` CLI option.
50
- # Setting this allows you to use `--seed` to deterministically reproduce
51
- # test failures related to randomization by passing the same `--seed` value
52
- # as the one that triggered the failure.
53
- Kernel.srand config.seed
54
-
55
- # rspec-expectations config goes here. You can use an alternate
56
- # assertion/expectation library such as wrong or the stdlib/minitest
57
- # assertions if you prefer.
58
- config.expect_with :rspec do |expectations|
59
- # Enable only the newer, non-monkey-patching expect syntax.
60
- # For more details, see:
61
- # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
62
- expectations.syntax = :expect
63
- end
64
-
65
- # rspec-mocks config goes here. You can use an alternate test double
66
- # library (such as bogus or mocha) by changing the `mock_with` option here.
67
- config.mock_with :rspec do |mocks|
68
- # Enable only the newer, non-monkey-patching expect syntax.
69
- # For more details, see:
70
- # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
71
- mocks.syntax = :expect
72
-
73
- # Prevents you from mocking or stubbing a method that does not exist on
74
- # a real object. This is generally recommended.
75
- mocks.verify_partial_doubles = true
76
- end
77
- =end
18
+ # The settings below are suggested to provide a good initial experience
19
+ # with RSpec, but feel free to customize to your heart's content.
20
+ # # These two settings work together to allow you to limit a spec run
21
+ # # to individual examples or groups you care about by tagging them with
22
+ # # `:focus` metadata. When nothing is tagged with `:focus`, all examples
23
+ # # get run.
24
+ # config.filter_run :focus
25
+ # config.run_all_when_everything_filtered = true
26
+ #
27
+ # # Many RSpec users commonly either run the entire suite or an individual
28
+ # # file, and it's useful to allow more verbose output when running an
29
+ # # individual spec file.
30
+ # if config.files_to_run.one?
31
+ # # Use the documentation formatter for detailed output,
32
+ # # unless a formatter has already been configured
33
+ # # (e.g. via a command-line flag).
34
+ # config.default_formatter = 'doc'
35
+ # end
36
+ #
37
+ # # Print the 10 slowest examples and example groups at the
38
+ # # end of the spec run, to help surface which specs are running
39
+ # # particularly slow.
40
+ # config.profile_examples = 10
41
+ #
42
+ # # Run specs in random order to surface order dependencies. If you find an
43
+ # # order dependency and want to debug it, you can fix the order by providing
44
+ # # the seed, which is printed after each run.
45
+ # # --seed 1234
46
+ # config.order = :random
47
+ #
48
+ # # Seed global randomization in this process using the `--seed` CLI option.
49
+ # # Setting this allows you to use `--seed` to deterministically reproduce
50
+ # # test failures related to randomization by passing the same `--seed` value
51
+ # # as the one that triggered the failure.
52
+ # Kernel.srand config.seed
53
+ #
54
+ # # rspec-expectations config goes here. You can use an alternate
55
+ # # assertion/expectation library such as wrong or the stdlib/minitest
56
+ # # assertions if you prefer.
57
+ # config.expect_with :rspec do |expectations|
58
+ # # Enable only the newer, non-monkey-patching expect syntax.
59
+ # # For more details, see:
60
+ # # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
61
+ # expectations.syntax = :expect
62
+ # end
63
+ #
64
+ # # rspec-mocks config goes here. You can use an alternate test double
65
+ # # library (such as bogus or mocha) by changing the `mock_with` option here.
66
+ # config.mock_with :rspec do |mocks|
67
+ # # Enable only the newer, non-monkey-patching expect syntax.
68
+ # # For more details, see:
69
+ # # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
70
+ # mocks.syntax = :expect
71
+ #
72
+ # # Prevents you from mocking or stubbing a method that does not exist on
73
+ # # a real object. This is generally recommended.
74
+ # mocks.verify_partial_doubles = true
75
+ # end
78
76
  end