effective_addresses 1.0.6 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/effective/addresses_controller.rb +0 -1
  3. data/app/models/concerns/acts_as_addressable.rb +35 -9
  4. data/lib/effective_addresses/version.rb +1 -1
  5. data/lib/effective_addresses.rb +1 -1
  6. data/spec/controllers/addresses_controller_spec.rb +5 -2
  7. data/spec/dummy/README.rdoc +5 -258
  8. data/spec/dummy/Rakefile +1 -2
  9. data/spec/dummy/app/assets/javascripts/application.js +3 -5
  10. data/spec/dummy/app/assets/stylesheets/application.css +5 -3
  11. data/spec/dummy/app/controllers/application_controller.rb +3 -1
  12. data/spec/dummy/app/models/user.rb +24 -0
  13. data/spec/dummy/app/models/user_with_address.rb +3 -0
  14. data/spec/dummy/app/models/user_with_required_address.rb +3 -0
  15. data/spec/dummy/app/models/user_with_required_address_and_full_name.rb +3 -0
  16. data/spec/dummy/app/models/user_with_required_full_name.rb +3 -0
  17. data/spec/dummy/app/models/user_with_singular_address.rb +3 -0
  18. data/spec/dummy/app/views/layouts/application.html.erb +2 -2
  19. data/spec/dummy/bin/bundle +3 -0
  20. data/spec/dummy/bin/rails +4 -0
  21. data/spec/dummy/bin/rake +4 -0
  22. data/spec/dummy/config/application.rb +6 -42
  23. data/spec/dummy/config/boot.rb +4 -9
  24. data/spec/dummy/config/database.yml +9 -9
  25. data/spec/dummy/config/environment.rb +3 -3
  26. data/spec/dummy/config/environments/development.rb +19 -19
  27. data/spec/dummy/config/environments/production.rb +45 -29
  28. data/spec/dummy/config/environments/test.rb +17 -15
  29. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  30. data/spec/dummy/config/initializers/effective_addresses.rb +15 -0
  31. data/spec/dummy/config/initializers/session_store.rb +1 -6
  32. data/spec/dummy/config/initializers/wrap_parameters.rb +6 -6
  33. data/spec/dummy/config/routes.rb +1 -57
  34. data/spec/dummy/config/secrets.yml +22 -0
  35. data/spec/dummy/config.ru +1 -1
  36. data/spec/dummy/db/schema.rb +24 -1
  37. data/spec/dummy/db/test.sqlite3 +0 -0
  38. data/spec/dummy/log/test.log +11534 -0
  39. data/spec/models/acts_as_addressable_spec.rb +159 -0
  40. data/spec/models/address_spec.rb +1 -2
  41. data/spec/rails_helper.rb +60 -0
  42. data/spec/spec_helper.rb +87 -30
  43. data/spec/support/factories.rb +48 -1
  44. metadata +172 -24
  45. data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
  46. data/spec/dummy/config/initializers/inflections.rb +0 -15
  47. data/spec/dummy/config/initializers/mime_types.rb +0 -5
  48. data/spec/dummy/config/initializers/secret_token.rb +0 -7
  49. data/spec/dummy/config/locales/en.yml +0 -5
  50. data/spec/dummy/public/404.html +0 -26
  51. data/spec/dummy/public/422.html +0 -26
  52. data/spec/dummy/public/500.html +0 -25
  53. data/spec/dummy/public/favicon.ico +0 -0
  54. data/spec/dummy/script/rails +0 -6
  55. data/spec/dummy/spec_link +0 -3
@@ -0,0 +1,159 @@
1
+ require 'spec_helper'
2
+
3
+ describe User do
4
+
5
+ describe 'Validations' do
6
+ let(:address) { FactoryGirl.create(:address) }
7
+ let(:address_with_full_name) { FactoryGirl.create(:address_with_full_name) }
8
+
9
+ describe 'no requirements' do
10
+ let(:user) { FactoryGirl.build(:user_with_address) }
11
+
12
+ it 'is valid without an address' do
13
+ user.valid?.should eq true
14
+ end
15
+ end
16
+
17
+ describe 'required address' do
18
+ let(:user) { FactoryGirl.build(:user_with_required_address) }
19
+
20
+ it 'is invalid without an address' do
21
+ user.valid?.should eq false
22
+ user.errors[:billing_address].present?.should eq true
23
+
24
+ # Now lets make it valid
25
+ user.billing_address = address
26
+
27
+ user.valid?.should eq true
28
+ user.errors[:billing_address].present?.should eq false
29
+ end
30
+ end
31
+
32
+ describe 'no required address, required full_name' do
33
+ let(:user) { FactoryGirl.build(:user_with_required_full_name) }
34
+
35
+ it 'is valid without an address' do
36
+ user.valid?.should eq true
37
+ end
38
+
39
+ it 'is invalid when an address without full name is present' do
40
+ user.billing_address = address
41
+ user.valid?.should eq false
42
+ user.errors[:billing_address].present?.should eq true
43
+
44
+ # Now lets make it valid
45
+ user.billing_address = address_with_full_name
46
+ user.valid?.should eq true
47
+ user.errors[:billing_address].present?.should eq false
48
+ end
49
+ end
50
+
51
+ describe 'required address, required full_name' do
52
+ let(:user) { FactoryGirl.build(:user_with_required_address_and_full_name) }
53
+
54
+ it 'is invalid without an address' do
55
+ user.valid?.should eq false
56
+ end
57
+
58
+ it 'is invalid when an address without full name is present' do
59
+ user.billing_address = address
60
+ user.valid?.should eq false
61
+ user.errors[:billing_address].present?.should eq true
62
+
63
+ # Now lets make it valid
64
+ user.billing_address = address_with_full_name
65
+ user.valid?.should eq true
66
+ user.errors[:billing_address].present?.should eq false
67
+ end
68
+ end
69
+ end
70
+
71
+ describe 'Many Addresses' do
72
+ let(:user) { FactoryGirl.build(:user_with_address) }
73
+ let(:address) { FactoryGirl.build(:address) }
74
+ let(:address2) { FactoryGirl.build(:address) }
75
+
76
+ it 'saves an address when parent record is saved' do
77
+ user.billing_address = address
78
+ user.save!
79
+
80
+ Effective::Address.all.count.should eq 1
81
+ user.addresses.length.should eq 1
82
+ end
83
+
84
+ it 'saves an additional address when parent record is saved with new address' do
85
+ user.billing_address = address
86
+ user.save!
87
+
88
+ user.billing_address = address2
89
+ user.save!
90
+
91
+ Effective::Address.all.count.should eq 2
92
+ user.addresses.length.should eq 2
93
+
94
+ user.billing_address.should eq address2
95
+ user.reload
96
+ user.billing_address.should eq address2
97
+ end
98
+
99
+ it 'doesnt save an additional address when saved with a duplicate address' do
100
+ user.billing_address = address
101
+ user.save!
102
+
103
+ address2.address1 = address.address1 # New object, same attributes
104
+
105
+ user.billing_address = address2
106
+ user.save!
107
+
108
+ Effective::Address.all.count.should eq 1
109
+ user.addresses.length.should eq 1
110
+
111
+ user.billing_address.should eq address
112
+ user.billing_address.should eq address2
113
+ end
114
+
115
+ end
116
+
117
+ describe 'Singular Addresses' do
118
+ let(:user) { FactoryGirl.build(:user_with_singular_address) }
119
+ let(:address) { FactoryGirl.build(:address) }
120
+ let(:address2) { FactoryGirl.build(:address) }
121
+
122
+ it 'saves an address when parent record is saved' do
123
+ user.billing_address = address
124
+ user.save!
125
+
126
+ Effective::Address.all.count.should eq 1
127
+ user.addresses.length.should eq 1
128
+ end
129
+
130
+ it 'does not save an additional address when parent record is saved with new address' do
131
+ user.billing_address = address
132
+ user.save!
133
+
134
+ Effective::Address.all.count.should eq 1
135
+ user.addresses.length.should eq 1
136
+
137
+ address_id = user.billing_address.id
138
+ address_id.present?.should eq true
139
+
140
+ # Now let's assign another address with different atts
141
+ user.billing_address = address2
142
+ user.billing_address.address1.should eq address2.address1
143
+ user.save!
144
+
145
+ Effective::Address.all.count.should eq 1
146
+ user.addresses.length.should eq 1
147
+
148
+ user.reload
149
+
150
+ user.billing_address.id.should eq address_id
151
+
152
+ user.billing_address.address1.should_not eq address.address1
153
+ user.billing_address.address1.should eq address2.address1
154
+ end
155
+
156
+ end
157
+
158
+
159
+ end
@@ -1,5 +1,4 @@
1
- require 'spec_helper'
2
- require 'carmen-rails'
1
+ require 'rails_helper'
3
2
 
4
3
  describe Effective::Address do
5
4
  let(:address) { FactoryGirl.create(:address) }
@@ -0,0 +1,60 @@
1
+ # This file is copied to spec/ when you run 'rails generate rspec:install'
2
+ ENV['RAILS_ENV'] ||= 'test'
3
+ require 'spec_helper'
4
+ require File.expand_path("../dummy/config/environment", __FILE__)
5
+
6
+ require 'rspec/rails'
7
+ require 'carmen-rails'
8
+ require 'factory_girl_rails'
9
+
10
+ # Add additional requires below this line. Rails is not loaded until this point!
11
+
12
+ # Requires supporting ruby files with custom matchers and macros, etc, in
13
+ # spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
14
+ # run as spec files by default. This means that files in spec/support that end
15
+ # in _spec.rb will both be required and run as specs, causing the specs to be
16
+ # run twice. It is recommended that you do not name files matching this glob to
17
+ # end with _spec.rb. You can configure this pattern with the --pattern
18
+ # option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
19
+ #
20
+ # The following line is provided for convenience purposes. It has the downside
21
+ # of increasing the boot-up time by auto-requiring all files in the support
22
+ # directory. Alternatively, in the individual `*_spec.rb` files, manually
23
+ # require only the support files necessary.
24
+ #
25
+
26
+ Dir[Rails.root.join("../../spec/support/**/*.rb")].each {|f| require f }
27
+
28
+ Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/base/en/world.yml')
29
+ Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/base/en/world/ca.yml')
30
+ Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/base/en/world/us.yml')
31
+ Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/base/en/world/sg.yml')
32
+
33
+ # Checks for pending migrations before tests are run.
34
+ # If you are not using ActiveRecord, you can remove this line.
35
+ ActiveRecord::Migration.maintain_test_schema!
36
+
37
+ RSpec.configure do |config|
38
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
39
+ config.fixture_path = "#{::Rails.root}/spec/fixtures"
40
+
41
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
42
+ # examples within a transaction, remove the following line or assign false
43
+ # instead of true.
44
+ config.use_transactional_fixtures = true
45
+
46
+ # RSpec Rails can automatically mix in different behaviours to your tests
47
+ # based on their file location, for example enabling you to call `get` and
48
+ # `post` in specs under `spec/controllers`.
49
+ #
50
+ # You can disable this behaviour by removing the line below, and instead
51
+ # explicitly tag your specs with their type, e.g.:
52
+ #
53
+ # RSpec.describe UsersController, :type => :controller do
54
+ # # ...
55
+ # end
56
+ #
57
+ # The different available types are documented in the features, such as in
58
+ # https://relishapp.com/rspec/rspec-rails/docs
59
+ config.infer_spec_type_from_file_location!
60
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,40 +1,97 @@
1
- ENV["RAILS_ENV"] ||= 'test'
1
+ # This file was generated by the `rspec --init` command. Conventionally, all
2
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
3
+ # The generated `.rspec` file contains `--require spec_helper` which will cause
4
+ # this file to always be loaded, without a need to explicitly require it in any
5
+ # files.
6
+ #
7
+ # Given that it is always loaded, you are encouraged to keep this file as
8
+ # light-weight as possible. Requiring heavyweight dependencies from this file
9
+ # will add to the boot time of your test suite on EVERY test run, even for an
10
+ # individual file that may not need all of that loaded. Instead, consider making
11
+ # a separate helper file that requires the additional dependencies and performs
12
+ # the additional setup, and require it from the spec files that actually need
13
+ # it.
14
+ #
15
+ # The `.rspec` file also contains a few flags that are not defaults but that
16
+ # users commonly want.
17
+ #
18
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
19
+ RSpec.configure do |config|
20
+ # rspec-expectations config goes here. You can use an alternate
21
+ # assertion/expectation library such as wrong or the stdlib/minitest
22
+ # assertions if you prefer.
23
+ config.expect_with :rspec do |expectations|
24
+ # This option will default to `true` in RSpec 4. It makes the `description`
25
+ # and `failure_message` of custom matchers include text for helper methods
26
+ # defined using `chain`, e.g.:
27
+ # be_bigger_than(2).and_smaller_than(4).description
28
+ # # => "be bigger than 2 and smaller than 4"
29
+ # ...rather than:
30
+ # # => "be bigger than 2"
31
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
32
+ end
2
33
 
3
- require File.expand_path("../dummy/config/environment", __FILE__)
34
+ # rspec-mocks config goes here. You can use an alternate test double
35
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
36
+ config.mock_with :rspec do |mocks|
37
+ # Prevents you from mocking or stubbing a method that does not exist on
38
+ # a real object. This is generally recommended, and will default to
39
+ # `true` in RSpec 4.
40
+ mocks.verify_partial_doubles = true
41
+ end
4
42
 
5
- require 'rspec/rails'
6
- require 'rspec/autorun'
7
- require 'factory_girl_rails'
8
- require 'haml'
43
+ config.order = :random
9
44
 
10
- # Requires supporting ruby files with custom matchers and macros, etc,
11
- # in spec/support/ and its subdirectories.
12
- Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f }
45
+ config.expect_with :rspec do |c|
46
+ c.syntax = [:should, :expect]
47
+ end
13
48
 
14
- Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/en/world.yml')
15
- Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/en/world/ca.yml')
16
- Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/en/world/us.yml')
17
- Carmen.i18n_backend.load_path << (Carmen.root_path.to_s + '/locale/en/world/sg.yml')
49
+ # The settings below are suggested to provide a good initial experience
50
+ # with RSpec, but feel free to customize to your heart's content.
51
+ =begin
52
+ # These two settings work together to allow you to limit a spec run
53
+ # to individual examples or groups you care about by tagging them with
54
+ # `:focus` metadata. When nothing is tagged with `:focus`, all examples
55
+ # get run.
56
+ config.filter_run :focus
57
+ config.run_all_when_everything_filtered = true
18
58
 
19
- RSpec.configure do |config|
20
- config.fixture_path = "#{::Rails.root}/spec/fixtures"
59
+ # Limits the available syntax to the non-monkey patched syntax that is
60
+ # recommended. For more details, see:
61
+ # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
62
+ # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
63
+ # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
64
+ config.disable_monkey_patching!
21
65
 
22
- Rails.logger.level = 4 # Output only minimal stuff to test.log
66
+ # This setting enables warnings. It's recommended, but in some cases may
67
+ # be too noisy due to issues in dependencies.
68
+ config.warnings = true
23
69
 
24
- config.use_transactional_fixtures = true # Make this false to once again use DatabaseCleaner
25
- config.infer_base_class_for_anonymous_controllers = false
26
- config.order = 'random'
27
- end
70
+ # Many RSpec users commonly either run the entire suite or an individual
71
+ # file, and it's useful to allow more verbose output when running an
72
+ # individual spec file.
73
+ if config.files_to_run.one?
74
+ # Use the documentation formatter for detailed output,
75
+ # unless a formatter has already been configured
76
+ # (e.g. via a command-line flag).
77
+ config.default_formatter = 'doc'
78
+ end
28
79
 
29
- class ActiveRecord::Base
30
- mattr_accessor :shared_connection
31
- @@shared_connection = nil
80
+ # Print the 10 slowest examples and example groups at the
81
+ # end of the spec run, to help surface which specs are running
82
+ # particularly slow.
83
+ config.profile_examples = 10
32
84
 
33
- def self.connection
34
- @@shared_connection || retrieve_connection
35
- end
36
- end
85
+ # Run specs in random order to surface order dependencies. If you find an
86
+ # order dependency and want to debug it, you can fix the order by providing
87
+ # the seed, which is printed after each run.
88
+ # --seed 1234
89
+ config.order = :random
37
90
 
38
- # Forces all threads to share the same connection. This works on
39
- # Capybara because it starts the web server in a thread.
40
- ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection
91
+ # Seed global randomization in this process using the `--seed` CLI option.
92
+ # Setting this allows you to use `--seed` to deterministically reproduce
93
+ # test failures related to randomization by passing the same `--seed` value
94
+ # as the one that triggered the failure.
95
+ Kernel.srand config.seed
96
+ =end
97
+ end
@@ -2,7 +2,17 @@ require 'factory_girl'
2
2
 
3
3
  FactoryGirl.define do
4
4
  factory :address, :class => Effective::Address do
5
- category 'shipping'
5
+ category 'billing'
6
+ full_name nil
7
+ sequence(:address1) { |n| "1234#{n} Fake Street" }
8
+ city 'San Antonio'
9
+ state_code 'TX'
10
+ country_code 'US'
11
+ postal_code '92387'
12
+ end
13
+
14
+ factory :address_with_full_name, :class => Effective::Address do
15
+ category 'billing'
6
16
  full_name 'Peter Pan'
7
17
  sequence(:address1) { |n| "1234#{n} Fake Street" }
8
18
  city 'San Antonio'
@@ -10,4 +20,41 @@ FactoryGirl.define do
10
20
  country_code 'US'
11
21
  postal_code '92387'
12
22
  end
23
+
24
+ factory :user do
25
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
26
+ sequence(:first_name) { |n| "First Name #{n}"}
27
+ sequence(:last_name) { |n| "Last Name #{n}"}
28
+ end
29
+
30
+ factory :user_with_address do
31
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
32
+ sequence(:first_name) { |n| "First Name #{n}"}
33
+ sequence(:last_name) { |n| "Last Name #{n}"}
34
+ end
35
+
36
+ factory :user_with_required_address do
37
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
38
+ sequence(:first_name) { |n| "First Name #{n}"}
39
+ sequence(:last_name) { |n| "Last Name #{n}"}
40
+ end
41
+
42
+ factory :user_with_required_full_name do
43
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
44
+ sequence(:first_name) { |n| "First Name #{n}"}
45
+ sequence(:last_name) { |n| "Last Name #{n}"}
46
+ end
47
+
48
+ factory :user_with_required_address_and_full_name do
49
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
50
+ sequence(:first_name) { |n| "First Name #{n}"}
51
+ sequence(:last_name) { |n| "Last Name #{n}"}
52
+ end
53
+
54
+ factory :user_with_singular_address do
55
+ sequence(:email) { |n| "user_#{n}@effective_addresses.test"}
56
+ sequence(:first_name) { |n| "First Name #{n}"}
57
+ sequence(:last_name) { |n| "Last Name #{n}"}
58
+ end
59
+
13
60
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_addresses
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-17 00:00:00.000000000 Z
11
+ date: 2015-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -94,6 +94,146 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-rails
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '3.0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '3.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: factory_girl_rails
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: shoulda-matchers
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'
139
+ - !ruby/object:Gem::Dependency
140
+ name: sqlite3
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: guard
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
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: guard-rspec
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: guard-livereload
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: pry
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ">="
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: pry-stack_explorer
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
223
+ - !ruby/object:Gem::Dependency
224
+ name: pry-byebug
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
97
237
  description: Extend any ActiveRecord object to have one or more named addresses. Includes
98
238
  a geographic region-aware custom form input backed by Carmen.
99
239
  email:
@@ -133,7 +273,16 @@ files:
133
273
  - spec/dummy/app/assets/stylesheets/application.css
134
274
  - spec/dummy/app/controllers/application_controller.rb
135
275
  - spec/dummy/app/helpers/application_helper.rb
276
+ - spec/dummy/app/models/user.rb
277
+ - spec/dummy/app/models/user_with_address.rb
278
+ - spec/dummy/app/models/user_with_required_address.rb
279
+ - spec/dummy/app/models/user_with_required_address_and_full_name.rb
280
+ - spec/dummy/app/models/user_with_required_full_name.rb
281
+ - spec/dummy/app/models/user_with_singular_address.rb
136
282
  - spec/dummy/app/views/layouts/application.html.erb
283
+ - spec/dummy/bin/bundle
284
+ - spec/dummy/bin/rails
285
+ - spec/dummy/bin/rake
137
286
  - spec/dummy/config.ru
138
287
  - spec/dummy/config/application.rb
139
288
  - spec/dummy/config/boot.rb
@@ -142,23 +291,18 @@ files:
142
291
  - spec/dummy/config/environments/development.rb
143
292
  - spec/dummy/config/environments/production.rb
144
293
  - spec/dummy/config/environments/test.rb
145
- - spec/dummy/config/initializers/backtrace_silencers.rb
146
- - spec/dummy/config/initializers/inflections.rb
147
- - spec/dummy/config/initializers/mime_types.rb
148
- - spec/dummy/config/initializers/secret_token.rb
294
+ - spec/dummy/config/initializers/cookies_serializer.rb
295
+ - spec/dummy/config/initializers/effective_addresses.rb
149
296
  - spec/dummy/config/initializers/session_store.rb
150
297
  - spec/dummy/config/initializers/wrap_parameters.rb
151
- - spec/dummy/config/locales/en.yml
152
298
  - spec/dummy/config/routes.rb
299
+ - spec/dummy/config/secrets.yml
153
300
  - spec/dummy/db/schema.rb
301
+ - spec/dummy/db/test.sqlite3
154
302
  - spec/dummy/log/test.log
155
- - spec/dummy/public/404.html
156
- - spec/dummy/public/422.html
157
- - spec/dummy/public/500.html
158
- - spec/dummy/public/favicon.ico
159
- - spec/dummy/script/rails
160
- - spec/dummy/spec_link
303
+ - spec/models/acts_as_addressable_spec.rb
161
304
  - spec/models/address_spec.rb
305
+ - spec/rails_helper.rb
162
306
  - spec/spec_helper.rb
163
307
  - spec/support/factories.rb
164
308
  homepage: https://github.com/code-and-effect/effective_addresses
@@ -192,7 +336,16 @@ test_files:
192
336
  - spec/dummy/app/assets/stylesheets/application.css
193
337
  - spec/dummy/app/controllers/application_controller.rb
194
338
  - spec/dummy/app/helpers/application_helper.rb
339
+ - spec/dummy/app/models/user.rb
340
+ - spec/dummy/app/models/user_with_address.rb
341
+ - spec/dummy/app/models/user_with_required_address.rb
342
+ - spec/dummy/app/models/user_with_required_address_and_full_name.rb
343
+ - spec/dummy/app/models/user_with_required_full_name.rb
344
+ - spec/dummy/app/models/user_with_singular_address.rb
195
345
  - spec/dummy/app/views/layouts/application.html.erb
346
+ - spec/dummy/bin/bundle
347
+ - spec/dummy/bin/rails
348
+ - spec/dummy/bin/rake
196
349
  - spec/dummy/config/application.rb
197
350
  - spec/dummy/config/boot.rb
198
351
  - spec/dummy/config/database.yml
@@ -200,25 +353,20 @@ test_files:
200
353
  - spec/dummy/config/environments/development.rb
201
354
  - spec/dummy/config/environments/production.rb
202
355
  - spec/dummy/config/environments/test.rb
203
- - spec/dummy/config/initializers/backtrace_silencers.rb
204
- - spec/dummy/config/initializers/inflections.rb
205
- - spec/dummy/config/initializers/mime_types.rb
206
- - spec/dummy/config/initializers/secret_token.rb
356
+ - spec/dummy/config/initializers/cookies_serializer.rb
357
+ - spec/dummy/config/initializers/effective_addresses.rb
207
358
  - spec/dummy/config/initializers/session_store.rb
208
359
  - spec/dummy/config/initializers/wrap_parameters.rb
209
- - spec/dummy/config/locales/en.yml
210
360
  - spec/dummy/config/routes.rb
361
+ - spec/dummy/config/secrets.yml
211
362
  - spec/dummy/config.ru
212
363
  - spec/dummy/db/schema.rb
364
+ - spec/dummy/db/test.sqlite3
213
365
  - spec/dummy/log/test.log
214
- - spec/dummy/public/404.html
215
- - spec/dummy/public/422.html
216
- - spec/dummy/public/500.html
217
- - spec/dummy/public/favicon.ico
218
366
  - spec/dummy/Rakefile
219
367
  - spec/dummy/README.rdoc
220
- - spec/dummy/script/rails
221
- - spec/dummy/spec_link
368
+ - spec/models/acts_as_addressable_spec.rb
222
369
  - spec/models/address_spec.rb
370
+ - spec/rails_helper.rb
223
371
  - spec/spec_helper.rb
224
372
  - spec/support/factories.rb
@@ -1,7 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4
- # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5
-
6
- # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7
- # Rails.backtrace_cleaner.remove_silencers!