responsible 0.0.3 → 0.1.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: cb9458a07f1290d5222ff96bf060736d2324b849
4
- data.tar.gz: d3675f0d6cac094f51f3b1dde2a3f4348cc3f374
3
+ metadata.gz: 3e1084e91625da4197eaa96fed35775417017e13
4
+ data.tar.gz: f6c0f35deb7af5e4ca968089d26225179b5746b4
5
5
  SHA512:
6
- metadata.gz: 9452b791b9165bb2c526659b705ddde6fbcdf1fe68c399bc05af2b2cc2d1b1c7d7c1d5784541b4d69d1dbd693b1c0d7ca121082920fd8e7717cc010543907ee6
7
- data.tar.gz: 79235cf791daff1e156f44993df1f770fdc45fec06003f4a1420025caaa3fe7faa25bb5e0b2c41b9765cb5138a60a8f4ecb9a556fabddc673ccc890e4c92e5ba
6
+ metadata.gz: 2ae0698dc609fd3fce630239165dd01ba6b1a962dab46db98cbbd3724541857555a4ab7e73728892d232165f040a393a768a4d84ea3c26494ef54d4b3366d0d8
7
+ data.tar.gz: e36b92901668c778343a59d8e193c031804cb3dcb5a0427ded669ddbd6f1ca1e23a5620432ebb10a28f743fb59b90242ca616dbf097c574e764dc963908b88b3
data/README.md CHANGED
@@ -18,7 +18,7 @@ class MySerializer < Responsible::Base
18
18
 
19
19
  def value_2
20
20
  # number.other[:value]
21
- data.other[:value]
21
+ __data__.other[:value]
22
22
  end
23
23
  end
24
24
 
@@ -52,7 +52,7 @@ It is initialized using a consumer (see below) and a data object that the JSON w
52
52
  ### data_object_name
53
53
 
54
54
  #### Pending code merge
55
- This is a convenience method and allow you to specify an access name for the data object you passed into the initializer (you can also access this object using the ```data``` method)
55
+ This is a convenience method and allow you to specify an access name for the data object you passed into the initializer (you can also access this object using the ```__data__``` method)
56
56
 
57
57
  ### property
58
58
 
data/lib/consumer.rb CHANGED
@@ -1,12 +1,3 @@
1
- module Responsible
2
- class Consumer
3
- def initialize(*valid_restrictions)
4
- @valid_restrictions = valid_restrictions
5
- end
1
+ warn "[DEPRECATION] #{Kernel.caller.first}\n[DEPRECATION] `require 'consumer'` is deprecated. File should now be correctly loaded using autoloading."
6
2
 
7
- def can_see?(restrictions)
8
- # always allow field with no restrictions to be seen
9
- restrictions.nil? || (Array(@valid_restrictions) & Array(restrictions)).any?
10
- end
11
- end
12
- end
3
+ require 'responsible/consumer'
data/lib/responsible.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'consumer'
1
+ require 'responsible/consumer'
2
2
 
3
3
  module Responsible
4
4
 
@@ -10,7 +10,7 @@ module Responsible
10
10
  class << self
11
11
 
12
12
  def data_object_name name
13
- alias_method name, :data
13
+ alias_method name, :__data__
14
14
  end
15
15
 
16
16
  def doc(str=nil)
@@ -35,15 +35,15 @@ module Responsible
35
35
 
36
36
  def delegate_method(name, to)
37
37
  define_method name do
38
- data.send(to || name)
38
+ __data__.send(to || name)
39
39
  end
40
40
  end
41
41
  end
42
42
 
43
- attr_reader :consumer, :data
43
+ attr_reader :consumer, :__data__
44
44
 
45
45
  def initialize(consumer, data)
46
- @consumer, @data = consumer, data
46
+ @consumer, @__data__ = consumer, data
47
47
 
48
48
  undefined_properties = _properties_.keys - methods
49
49
 
@@ -63,11 +63,16 @@ module Responsible
63
63
 
64
64
  result
65
65
  end
66
-
66
+
67
+ def data
68
+ warn "[DEPRECATION] #{Kernel.caller.first}\n[DEPRECATION] `data` is deprecated. Please use `__data__` instead."
69
+ __data__
70
+ end
71
+
67
72
  private
68
73
 
69
74
  def _properties_
70
75
  self.class.properties
71
76
  end
72
77
  end
73
- end
78
+ end
@@ -0,0 +1,12 @@
1
+ module Responsible
2
+ class Consumer
3
+ def initialize(*valid_restrictions)
4
+ @valid_restrictions = valid_restrictions
5
+ end
6
+
7
+ def can_see?(restrictions)
8
+ # always allow field with no restrictions to be seen
9
+ restrictions.nil? || (Array(@valid_restrictions) & Array(restrictions)).any?
10
+ end
11
+ end
12
+ end
data/responsible.gemspec CHANGED
@@ -3,18 +3,19 @@ $:.unshift 'lib'
3
3
  Gem::Specification.new do |s|
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.name = "responsible"
6
- s.version = "0.0.3"
6
+ s.version = "0.1.0"
7
7
  s.date = Time.now.strftime('%Y-%m-%d')
8
8
  s.homepage = "https://github.com/reevoo/responsible"
9
9
  s.authors = ["dw_henry", "lamp"]
10
10
  s.email = "developers@reevoo.com"
11
11
  s.summary = "Response builders"
12
+ s.description= "JSON building library"
12
13
 
13
14
  s.files = %w[ Gemfile README.md responsible.gemspec LICENSE ]
14
15
  s.files += Dir['lib/**/*']
15
16
  s.test_files = Dir['spec/**/*']
16
17
 
17
- s.add_development_dependency 'rake'
18
- s.add_development_dependency 'minitest'
19
- s.add_development_dependency 'rspec'
18
+ s.add_development_dependency 'rake', '~> 0'
19
+ s.add_development_dependency 'minitest', '~> 0'
20
+ s.add_development_dependency 'rspec', '~> 0'
20
21
  end
data/spec/base_spec.rb CHANGED
@@ -75,7 +75,7 @@ describe Responsible::Base do
75
75
  property :no_role
76
76
 
77
77
  def no_role
78
- data.no_role
78
+ __data__.no_role
79
79
  end
80
80
  end
81
81
 
@@ -90,7 +90,7 @@ describe Responsible::Base do
90
90
  property :with_role, restrict_to: :some_role
91
91
 
92
92
  def with_role
93
- data.with_role
93
+ __data__.with_role
94
94
  end
95
95
  end
96
96
 
@@ -106,19 +106,19 @@ describe Responsible::Base do
106
106
  property :with_another_role, restrict_to: :another_role
107
107
 
108
108
  def with_external_role
109
- data.with_external_role
109
+ __data__.with_external_role
110
110
  end
111
111
 
112
112
  def with_analytics_role
113
- data.with_analytics_role
113
+ __data__.with_analytics_role
114
114
  end
115
115
 
116
116
  def with_another_role
117
- data.with_another_role
117
+ __data__.with_another_role
118
118
  end
119
119
  end
120
120
 
121
-
121
+
122
122
  data = double(:data, with_external_role: 'external', with_analytics_role: 'analytics', with_another_role: 'another')
123
123
  consumer = Responsible::Consumer.new(:external, :analytics)
124
124
 
@@ -127,7 +127,7 @@ describe Responsible::Base do
127
127
  end
128
128
 
129
129
  describe "#data_object_name" do
130
-
130
+
131
131
  let(:consumer) { double(:consumer, can_see?: true) }
132
132
 
133
133
  it "allows aliasing of the data method to a more sensible name" do
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,2 @@
1
1
  $LOAD_PATH.unshift("./lib")
2
2
  require 'responsible'
3
- require 'consumer'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: responsible
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - dw_henry
@@ -9,51 +9,51 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-08-19 00:00:00.000000000 Z
12
+ date: 2014-08-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: minitest
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rspec
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ">="
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
48
  version: '0'
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ">="
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '0'
56
- description:
56
+ description: JSON building library
57
57
  email: developers@reevoo.com
58
58
  executables: []
59
59
  extensions: []
@@ -64,6 +64,7 @@ files:
64
64
  - README.md
65
65
  - lib/consumer.rb
66
66
  - lib/responsible.rb
67
+ - lib/responsible/consumer.rb
67
68
  - responsible.gemspec
68
69
  - spec/base_spec.rb
69
70
  - spec/consumer_spec.rb