has_token_id 0.4.3 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2434c3ca123b2c8cf8d6f8c41e91e16f4675ac52
4
- data.tar.gz: 84d2fbcd1af6be0913ead86d16cd8b91ce5494f4
3
+ metadata.gz: 4315d7366da0c89f4949bd497cca7684d9241cfb
4
+ data.tar.gz: 867530c0a3ce60f9e4e5fbb05fba4b2f3ac03958
5
5
  SHA512:
6
- metadata.gz: 386d303806fc383c46d3a187eb2bd47af5ebdc37e85d4ebd5ccd6cee1303f70c293e015323fcd9475f84ed07542bc764f2722f00ca62cd731ae47970c81046d5
7
- data.tar.gz: 7cdf6aae79b897a4ace1cf90460dda57f3235740f75f402ce1830149a112014275af72d2952052ee35fc8f6d88c9ae293a7f3be62df8c19b1c18e6cd662bc34d
6
+ metadata.gz: fb22d7f9a1c1cb0274659ed9f9d8c37a0367f9616e2f975b28dd347f7a0518f27579a395cd94794930eb6bc8be1871e36c6d0798671a71df3a517a5c8094aa96
7
+ data.tar.gz: 37b180a8ede2b1dbf6723c6ad86acac554cd56608621375896139d2904487c1c0274e20388291a44919d0a2d75cc116c75d77def0712b97ba86504d334a5e2d9
@@ -7,4 +7,3 @@ rvm:
7
7
  - 2.1.3
8
8
  - 2.2.3
9
9
  - 2.3.1
10
- - rbx
data/README.md CHANGED
@@ -10,7 +10,7 @@ Installation
10
10
  Add has_token_id to your Gemfile like so:
11
11
 
12
12
  ```ruby
13
- gem 'has_token_id', '~> 0.4.0'
13
+ gem 'has_token_id', '~> 0.5.0'
14
14
  ```
15
15
 
16
16
  Now run `bundle install` and you're good to go!
@@ -55,7 +55,7 @@ That's basically it! Your Items will now know to use their token as their identi
55
55
  Try it out in your `rails console`
56
56
 
57
57
  ```ruby
58
- @item = Item.create(:name => "Tokenz!")
58
+ @item = Item.create(name: "Tokenz!")
59
59
  #<Item id: 1, token: "Iccfa4bb1613e80097ba9495", name: "Tokenz!", created_at: "2012-01-26 20:17:13", updated_at: "2012-01-26 20:17:13">
60
60
  @item.to_param
61
61
  # Iccfa4bb1613e80097ba9495
@@ -73,11 +73,13 @@ Options
73
73
  You can customize has_token_id by setting a few options. Here's the defaults:
74
74
 
75
75
  ```ruby
76
- :prefix => nil, # if nil use first letter of class name
77
- :length => 24,
78
- :short_token_length => 8,
79
- :param_name => 'token',
80
- :case_sensitive => false
76
+ {
77
+ prefix: nil, # if nil use first letter of class name
78
+ length: 24,
79
+ short_token_length: 8,
80
+ param_name: 'token',
81
+ case_sensitive: false
82
+ }
81
83
  ```
82
84
 
83
85
 
@@ -91,8 +93,8 @@ HasTokenId.default_token_options[:prefix] = "OMG"
91
93
 
92
94
  # for multiple options
93
95
  HasTokenId.default_token_options.merge!(
94
- :case_sensitive => true,
95
- :length => 8
96
+ case_sensitive: true,
97
+ length: 8
96
98
  )
97
99
  ```
98
100
 
@@ -101,11 +103,11 @@ Options can also be set on a per-class level:
101
103
 
102
104
  ```ruby
103
105
  class List < ActiveRecord::Base
104
- has_token_id :prefix => "LI", :length => 10
106
+ has_token_id prefix: "LI", length: 10
105
107
  end
106
108
 
107
109
  class Item < ActiveRecord::Base
108
- has_token_id :prefix => "ITM"
110
+ has_token_id prefix: "ITM"
109
111
  end
110
112
  ```
111
113
 
@@ -154,4 +156,4 @@ bundle exec rake
154
156
  License
155
157
  ------------------------------------------------------------------------------
156
158
 
157
- Copyright (c) 2011 - 2016 Spencer Steffen and Citrus, released under the New BSD License All rights reserved.
159
+ Copyright (c) 2011 - 2018 Spencer Steffen and Citrus, released under the New BSD License All rights reserved.
@@ -19,12 +19,12 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
 
22
- s.add_dependency('activerecord', '~> 3')
23
- s.add_dependency('activesupport', '~> 3')
22
+ s.add_dependency('activerecord', '>= 4')
23
+ s.add_dependency('activesupport', '>= 4')
24
24
 
25
- s.add_development_dependency('rails', '~> 3')
25
+ s.add_development_dependency('rails', '>= 4')
26
26
  s.add_development_dependency('dummier', '~> 0.3')
27
- s.add_development_dependency('minitest', '~> 2.0')
27
+ s.add_development_dependency('minitest', '~> 4.2')
28
28
  s.add_development_dependency('minitest_should', '~> 0.3')
29
29
  s.add_development_dependency('sqlite3', '~> 1.3')
30
30
 
@@ -5,8 +5,8 @@ module HasTokenId
5
5
  base.send(:extend, ClassMethods)
6
6
  base.send(:include, InstanceMethods)
7
7
  base.class_eval do
8
- validates :token, :presence => true, :uniqueness => true
9
- before_validation :generate_token, :on => :create, :if => proc{|record| record.token.nil? }
8
+ validates :token, presence: true, uniqueness: true
9
+ before_validation :generate_token, on: :create, if: proc{|record| record.token.nil? }
10
10
  end
11
11
  end
12
12
 
@@ -14,10 +14,11 @@ module HasTokenId
14
14
 
15
15
  # Default options as well as an overwrite point so you can assign different defaults to different models
16
16
  def default_token_options
17
- return @default_token_options if @default_token_options
18
- @default_token_options = HasTokenId.default_token_options
19
- @default_token_options[:prefix] ||= self.name[0, 1]
20
- @default_token_options
17
+ @default_token_options ||= begin
18
+ options = HasTokenId.default_token_options
19
+ options[:prefix] ||= self.name[0, 1]
20
+ options
21
+ end
21
22
  end
22
23
 
23
24
  # Generates a unique token based on the options
@@ -2,12 +2,13 @@ require 'active_record/connection_adapters/abstract/schema_definitions'
2
2
 
3
3
  module HasTokenId
4
4
  module TableDefinition
5
-
5
+
6
6
  def token(*args)
7
- options = { :length => HasTokenId.default_token_options[:length] }.merge(args.extract_options!)
8
- column(:token, :string, options.merge(:nil => false))
7
+ options = { length: HasTokenId.default_token_options[:length] }.merge(args.extract_options!)
8
+ puts "opeiont: #{options}"
9
+ column(:token, :string, options.merge(nil: false))
9
10
  end
10
-
11
+
11
12
  end
12
13
  end
13
14
 
@@ -1,3 +1,3 @@
1
1
  module HasTokenId
2
- VERSION = "0.4.3"
2
+ VERSION = "0.5.0"
3
3
  end
@@ -4,7 +4,7 @@ run "rails g scaffold item name:string"
4
4
  # Add has_token_id to our Item model
5
5
  gsub_file "app/models/item.rb", "end", %(
6
6
  has_token_id
7
-
7
+
8
8
  end)
9
9
 
10
10
  # Replace the delete link with a button since we won't have js in the demo
@@ -1,26 +1,25 @@
1
1
  require "test_helper"
2
2
 
3
3
  class TableDefinitionTest < MiniTest::Should::TestCase
4
-
4
+
5
5
  setup do
6
- @migration = ActiveRecord::Migration.new
7
- @definition = ActiveRecord::ConnectionAdapters::TableDefinition.new(@migration)
6
+ @definition = ActiveRecord::ConnectionAdapters::TableDefinition.new({}, "items", false, {})
8
7
  end
9
-
8
+
10
9
  should "include token as a migration table definition" do
11
10
  assert @definition.respond_to?(:token)
12
11
  end
13
-
12
+
14
13
  should "token definition should be the same as a string column named token" do
15
14
  capture(:stdout) {
16
15
  assert_equal @definition.column(:token, :string), @definition.token
17
16
  }
18
17
  end
19
-
18
+
20
19
  should "token definition should include custom options" do
21
20
  capture(:stdout) {
22
- assert_equal @definition.column(:token, :string, :length => 8), @definition.token(:length => 8)
21
+ assert_equal @definition.column(:token, :string, length: 8), @definition.token(length: 8)
23
22
  }
24
23
  end
25
-
24
+
26
25
  end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: has_token_id
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Spencer Steffen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-22 00:00:00.000000000 Z
11
+ date: 2018-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '3'
19
+ version: '4'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '3'
26
+ version: '4'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '3'
33
+ version: '4'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '3'
40
+ version: '4'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rails
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '3'
47
+ version: '4'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '3'
54
+ version: '4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: dummier
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '2.0'
75
+ version: '4.2'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '2.0'
82
+ version: '4.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: minitest_should
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -156,7 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
156
  version: '0'
157
157
  requirements: []
158
158
  rubyforge_project:
159
- rubygems_version: 2.4.5.1
159
+ rubygems_version: 2.6.11
160
160
  signing_key:
161
161
  specification_version: 4
162
162
  summary: Identifies your active records with a random token.