amazing_print 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 831dcabef8a04de7ce8342167146dc8ab32017b74d4edd59cb195a151f7da935
4
- data.tar.gz: 4ee631f2582a834a7cf729cc183da2f9473fb8c3fd77ba176eaf731722b7a626
3
+ metadata.gz: 5d1a2c6f2a9c7b910cf3a164259418a8b89e37ac5584ff9a99f5d2ab6079ca70
4
+ data.tar.gz: 89963f9ddcfc830c4901963a2c0dc314bb0cda65c18dd601cc13b6bee146cf72
5
5
  SHA512:
6
- metadata.gz: 65eccdf9af7bae3928fa0310e17e823c2c308bb21884cb70d264175fbf1d73716e5a8e2d8ff3bed7a316033fb7d61763cc70ae6411fb68566cbf599fb0fd535d
7
- data.tar.gz: 138adab4d8821378740b0214553c2a8ef6ac0cb7ce96cdf0029b437fb30bc3776958f81aa00dddbc855d137114388ae7b4ef4513df41d0ab280f34563342b95d
6
+ metadata.gz: 15bb7524e156bdc2994fe91542c4d5217d50434f9bed4dcd226a577eb17cb0c514b6077072433ae627c60de9e082b90bb1ac1d8c2de6d1fbbe796fd09ed78639
7
+ data.tar.gz: 8d598afc6f5b52480df736911725af1112b106ca691e620f0400748b75db1fb31561958749bb9255ffe8ad223fd2442d4ff25570a263a771102debe12c39b81f
data/Appraisals CHANGED
@@ -48,10 +48,13 @@ appraise 'sequel-5.0' do
48
48
  gem 'sqlite3', platform: :mri
49
49
  end
50
50
 
51
- # appraise 'mongo_mapper' do
52
- # gem 'mongo_mapper'
53
- # end
54
- #
51
+ appraise 'mongo_mapper' do
52
+ gem 'activemodel', '~> 4.2.0'
53
+ gem 'activesupport', '~> 4.2.0'
54
+ gem 'bigdecimal', '~> 1.4'
55
+ gem 'mongo_mapper', '~> 0.14'
56
+ end
57
+
55
58
  # appraise 'ripple' do
56
59
  # gem 'tzinfo'
57
60
  # gem 'ripple'
@@ -1,5 +1,14 @@
1
1
  ## unreleased
2
- - Add `uncolor` method to remove ANSI color sequences.
2
+ - Correctly print active_model_errors for models that don't have tables
3
+
4
+ ## v1.2.0
5
+
6
+ - Fix frozen string literal issue with ActiveRecord
7
+ - Add uncolor String method to remove ANSI color codes - #30 by duffyjp
8
+ - Restore original copyright - #33 by amarshall
9
+ - Remove method core extension since it is not needed since ruby 1.9 - #37 by grosser
10
+ - Remove pale and black string color aliases - #38
11
+ - Fix formatting ActionController::Parameters - #29
3
12
 
4
13
 
5
14
  ## v1.1.0
data/README.md CHANGED
@@ -48,7 +48,7 @@ ruby19_syntax: false, # Use Ruby 1.9 hash syntax in output.
48
48
  class_name: :class, # Method called to report the instance class name. (e.g. :to_s)
49
49
  object_id: true, # Show object id.
50
50
  color: {
51
- args: :pale,
51
+ args: :whiteish,
52
52
  array: :white,
53
53
  bigdecimal: :blue,
54
54
  class: :yellow,
@@ -56,13 +56,13 @@ color: {
56
56
  falseclass: :red,
57
57
  integer: :blue,
58
58
  float: :blue,
59
- hash: :pale,
59
+ hash: :whiteish,
60
60
  keyword: :cyan,
61
61
  method: :purpleish,
62
62
  nilclass: :red,
63
63
  rational: :blue,
64
64
  string: :yellowish,
65
- struct: :pale,
65
+ struct: :whiteish,
66
66
  symbol: :cyanish,
67
67
  time: :greenish,
68
68
  trueclass: :green,
@@ -74,7 +74,7 @@ Supported color names:
74
74
 
75
75
  ```ruby
76
76
  :gray, :red, :green, :yellow, :blue, :purple, :cyan, :white
77
- :black, :redish, :greenish, :yellowish, :blueish, :purpleish, :cyanish, :pale
77
+ :grayish, :redish, :greenish, :yellowish, :blueish, :purpleish, :cyanish, :whiteish
78
78
  ```
79
79
 
80
80
  Use `Object#ai` to return an ASCII encoded string:
@@ -328,7 +328,7 @@ For example:
328
328
  AmazingPrint.defaults = {
329
329
  :indent => -2,
330
330
  :color => {
331
- :hash => :pale,
331
+ :hash => :whiteish,
332
332
  :class => :white
333
333
  }
334
334
  }
@@ -55,7 +55,7 @@ module AmazingPrint
55
55
  end
56
56
  end
57
57
  end
58
- "#{object} " + awesome_hash(data)
58
+ [object.to_s, awesome_hash(data)].join(' ')
59
59
  end
60
60
 
61
61
  # Format ActiveRecord class object.
@@ -85,7 +85,7 @@ module AmazingPrint
85
85
  return awesome_object(object) if @options[:raw]
86
86
 
87
87
  object_dump = object.marshal_dump.first
88
- data = if object_dump.class.column_names != object_dump.attributes.keys
88
+ data = if object_dump.class.try(:column_names) != object_dump.attributes.keys
89
89
  object_dump.attributes
90
90
  else
91
91
  object_dump.class.column_names.each_with_object(::ActiveSupport::OrderedHash.new) do |name, hash|
@@ -97,7 +97,7 @@ module AmazingPrint
97
97
  end
98
98
 
99
99
  data.merge!({ details: object.details, messages: object.messages })
100
- "#{object} " << awesome_hash(data)
100
+ [object.to_s, awesome_hash(data)].join(' ')
101
101
  end
102
102
  end
103
103
  end
@@ -90,7 +90,7 @@ module AmazingPrint
90
90
  label = "#{colorize('embedded', :assoc)} #{label}"
91
91
  end
92
92
 
93
- "#{label} " << awesome_hash(data)
93
+ [label, awesome_hash(data)].join(' ')
94
94
  end
95
95
 
96
96
  # Format MongoMapper association object.
@@ -7,6 +7,6 @@
7
7
  #------------------------------------------------------------------------------
8
8
  module AmazingPrint
9
9
  def self.version
10
- '1.2.0'
10
+ '1.2.1'
11
11
  end
12
12
  end
@@ -29,4 +29,12 @@ if ExtVerifier.has_rails?
29
29
  class User < ActiveRecord::Base; has_many :emails; end
30
30
  class SubUser < User; end
31
31
  class Email < ActiveRecord::Base; belongs_to :user; end
32
+ class TableFreeModel
33
+ include ::ActiveModel::Validations
34
+ attr_reader(:name)
35
+
36
+ def attributes
37
+ { 'name' => name }
38
+ end
39
+ end
32
40
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+ require 'active_record_helper'
5
+
6
+ RSpec.describe 'ActiveModel::Errors formatting', skip: -> { !ExtVerifier.has_rails? }.call do
7
+ before do
8
+ @ap = AmazingPrint::Inspector.new(plain: true)
9
+ end
10
+
11
+ it 'should format active_model_errors properly' do
12
+ model = TableFreeModel.new
13
+ model.errors.add(:name, "can't be blank")
14
+
15
+ out = @ap.awesome(model.errors)
16
+
17
+ str = <<~ERRORS.strip
18
+ #<ActiveModel::Errors:placeholder_id> {
19
+ "name" => nil,
20
+ :details => {
21
+ :name => [
22
+ [0] {
23
+ :error => "can't be blank"
24
+ }
25
+ ]
26
+ },
27
+ :messages => {
28
+ :name => [
29
+ [0] "can't be blank"
30
+ ]
31
+ }
32
+ }
33
+ ERRORS
34
+
35
+ expect(out).to be_similar_to(str)
36
+ end
37
+ end
@@ -31,8 +31,8 @@ RSpec.describe 'AmazingPrint/MongoMapper', skip: -> { !ExtVerifier.has_mongo_map
31
31
  user = MongoUser.new(first_name: 'Al', last_name: 'Capone')
32
32
 
33
33
  out = @ap.send(:awesome, user)
34
- out.gsub!(/#\<Proc:.+?\>/, 'amazing_print_PROC_STUB')
35
- out.gsub!(/BSON::ObjectId\('[\da-f]+?'\)/, "BSON::ObjectId('123456789')")
34
+ .gsub(/#\<Proc:.+?\>/, 'amazing_print_PROC_STUB')
35
+ .gsub(/BSON::ObjectId\('[\da-f]+?'\)/, "BSON::ObjectId('123456789')")
36
36
 
37
37
  str = if MongoMapper::Version >= '0.13'
38
38
  <<~EOS.strip
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amazing_print
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Dvorkin
8
8
  - Kevin McCormackPatrik Wenger
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-06-09 00:00:00.000000000 Z
12
+ date: 2020-06-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: appraisal
@@ -152,6 +152,7 @@ files:
152
152
  - spec/core_ext/string_spec.rb
153
153
  - spec/ext/action_controller_spec.rb
154
154
  - spec/ext/action_view_spec.rb
155
+ - spec/ext/active_model_spec.rb
155
156
  - spec/ext/active_record_spec.rb
156
157
  - spec/ext/active_support_spec.rb
157
158
  - spec/ext/mongo_mapper_spec.rb
@@ -195,7 +196,7 @@ homepage: https://github.com/amazing-print/amazing_print
195
196
  licenses:
196
197
  - MIT
197
198
  metadata: {}
198
- post_install_message:
199
+ post_install_message:
199
200
  rdoc_options: []
200
201
  require_paths:
201
202
  - lib
@@ -211,52 +212,53 @@ required_rubygems_version: !ruby/object:Gem::Requirement
211
212
  version: '0'
212
213
  requirements: []
213
214
  rubygems_version: 3.1.2
214
- signing_key:
215
+ signing_key:
215
216
  specification_version: 4
216
217
  summary: Pretty print Ruby objects with proper indentation and colors
217
218
  test_files:
218
- - spec/support/rails_versions.rb
219
+ - spec/methods_spec.rb
220
+ - spec/spec_helper.rb
221
+ - spec/colors_spec.rb
222
+ - spec/formats_spec.rb
223
+ - spec/active_record_helper.rb
224
+ - spec/objects_spec.rb
225
+ - spec/ext/active_record_spec.rb
226
+ - spec/ext/action_view_spec.rb
227
+ - spec/ext/ostruct_spec.rb
228
+ - spec/ext/mongoid_spec.rb
229
+ - spec/ext/ripple_spec.rb
230
+ - spec/ext/sequel_spec.rb
231
+ - spec/ext/active_support_spec.rb
232
+ - spec/ext/active_model_spec.rb
233
+ - spec/ext/nokogiri_spec.rb
234
+ - spec/ext/mongo_mapper_spec.rb
235
+ - spec/ext/nobrainer_spec.rb
236
+ - spec/ext/action_controller_spec.rb
237
+ - spec/core_ext/string_spec.rb
238
+ - spec/core_ext/logger_spec.rb
219
239
  - spec/support/mongoid_versions.rb
220
- - spec/support/ext_verifier.rb
221
- - spec/support/active_record_data/4_2_diana_legacy.txt
240
+ - spec/support/active_record_data/6_0_diana.txt
241
+ - spec/support/active_record_data/4_2_diana.txt
222
242
  - spec/support/active_record_data/4_2_multi_legacy.txt
243
+ - spec/support/active_record_data/3_2_diana.txt
244
+ - spec/support/active_record_data/4_0_diana.txt
245
+ - spec/support/active_record_data/4_2_diana_legacy.txt
223
246
  - spec/support/active_record_data/5_1_diana.txt
224
- - spec/support/active_record_data/4_2_diana.txt
225
- - spec/support/active_record_data/5_2_diana.txt
226
- - spec/support/active_record_data/4_1_diana.txt
227
- - spec/support/active_record_data/6_0_diana.txt
228
- - spec/support/active_record_data/5_0_diana.txt
229
- - spec/support/active_record_data/5_2_multi.txt
230
- - spec/support/active_record_data/4_1_multi.txt
231
- - spec/support/active_record_data/3_2_diana_legacy.txt
232
247
  - spec/support/active_record_data/6_0_multi.txt
233
- - spec/support/active_record_data/5_0_multi.txt
234
- - spec/support/active_record_data/3_2_diana.txt
235
248
  - spec/support/active_record_data/3_2_multi_legacy.txt
249
+ - spec/support/active_record_data/5_0_multi.txt
250
+ - spec/support/active_record_data/5_2_multi.txt
236
251
  - spec/support/active_record_data/4_2_multi.txt
237
252
  - spec/support/active_record_data/5_1_multi.txt
238
- - spec/support/active_record_data/3_2_multi.txt
239
- - spec/support/active_record_data/4_0_diana.txt
240
253
  - spec/support/active_record_data/4_0_multi.txt
254
+ - spec/support/active_record_data/3_2_diana_legacy.txt
255
+ - spec/support/active_record_data/4_1_multi.txt
256
+ - spec/support/active_record_data/5_2_diana.txt
257
+ - spec/support/active_record_data/4_1_diana.txt
258
+ - spec/support/active_record_data/3_2_multi.txt
259
+ - spec/support/active_record_data/5_0_diana.txt
260
+ - spec/support/rails_versions.rb
241
261
  - spec/support/active_record_data.rb
242
- - spec/formats_spec.rb
243
- - spec/objects_spec.rb
244
- - spec/misc_spec.rb
245
- - spec/colors_spec.rb
246
- - spec/active_record_helper.rb
247
- - spec/core_ext/logger_spec.rb
248
- - spec/core_ext/string_spec.rb
262
+ - spec/support/ext_verifier.rb
249
263
  - spec/sequel_helper.rb
250
- - spec/methods_spec.rb
251
- - spec/ext/nobrainer_spec.rb
252
- - spec/ext/ostruct_spec.rb
253
- - spec/ext/nokogiri_spec.rb
254
- - spec/ext/active_support_spec.rb
255
- - spec/ext/active_record_spec.rb
256
- - spec/ext/action_view_spec.rb
257
- - spec/ext/sequel_spec.rb
258
- - spec/ext/ripple_spec.rb
259
- - spec/ext/mongo_mapper_spec.rb
260
- - spec/ext/mongoid_spec.rb
261
- - spec/ext/action_controller_spec.rb
262
- - spec/spec_helper.rb
264
+ - spec/misc_spec.rb