shirinji 0.0.4 → 0.0.5

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
- SHA1:
3
- metadata.gz: 77fda6000796dd02133fae4778b4501bc570990f
4
- data.tar.gz: 46c1303d621e5fb851a4cc01514a4451df06535f
2
+ SHA256:
3
+ metadata.gz: 4f36c09180696162a1adef32acfc0259d0f5450885ec7ef9576a1de1cefa1698
4
+ data.tar.gz: 45c3b0f411164e20034ea59af975c05bb2a4e8dcfa990f2b15249c14cc480b8c
5
5
  SHA512:
6
- metadata.gz: 12e6a82f1e8b7fea438a05bdd7020cabc0197ed2e1ec6398bd0d19b81031a98bb29eeaeeba85b9064d3b11cd213156b9123ff813961e4b374f3a32bbc53d75b3
7
- data.tar.gz: 35f01c0f061af476ccab1704656c4187fa5284c025aabd332e89dd7b8b511e5a19f9ab2c73380649e6fc715d71965e6e6066f5c01d632f7163b35a6d8fa53133
6
+ metadata.gz: 6b14598afaab17bb33c5631e4861137d1ae1a0dea612ee987251b3b48207dc663d826b35db5123791305bdb53164f97380631520a0724cc27b78d1ab37502d6b
7
+ data.tar.gz: 29d7c096a9faadac6583ab46952a25fb4512b541c99f55001e473516e65cd9876ac45e4d3a189fefd3fb3bb9c3ee1be85ba0cd269629efa634e2c7ce47382ea5
data/.gitignore CHANGED
@@ -9,4 +9,7 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
- .idea
12
+ .idea
13
+
14
+ docker-compose.yml
15
+ Dockerfile
data/.travis.yml CHANGED
@@ -6,9 +6,16 @@ rvm:
6
6
  - 2.4.2
7
7
  - 2.4.3
8
8
  - 2.4.4
9
+ - 2.4.5
10
+ - 2.4.6
9
11
  - 2.5.0
10
12
  - 2.5.1
11
13
  - 2.5.2
12
14
  - 2.5.3
15
+ - 2.5.4
16
+ - 2.5.5
13
17
  - 2.6.0
14
- before_install: gem install bundler -v 1.16.6
18
+ - 2.6.1
19
+ - 2.6.2
20
+ - 2.6.3
21
+ before_install: gem install bundler
@@ -2,11 +2,12 @@
2
2
 
3
3
  module Shirinji
4
4
  class Attribute
5
- attr_reader :name, :reference
5
+ attr_reader :name, :reference, :value
6
6
 
7
- def initialize(name, reference)
7
+ def initialize(name, reference = nil, value = nil)
8
8
  @name = name
9
9
  @reference = reference
10
+ @value = value
10
11
  end
11
12
  end
12
13
  end
data/lib/shirinji/bean.rb CHANGED
@@ -21,8 +21,8 @@ module Shirinji
21
21
  end
22
22
  # rubocop:enable Metrics/ParameterLists
23
23
 
24
- def attr(name, ref:)
25
- attributes[name] = Attribute.new(name, ref)
24
+ def attr(name, ref: nil, value: nil)
25
+ attributes[name] = Attribute.new(name, ref, value)
26
26
  end
27
27
 
28
28
  private
@@ -51,7 +51,7 @@ module Shirinji
51
51
  check_params!(params)
52
52
 
53
53
  args = params.each_with_object({}) do |(_type, arg), memo|
54
- memo[arg] = resolve(resolve_attribute(bean, arg))
54
+ memo[arg] = resolve_attribute(bean, arg)
55
55
  end
56
56
 
57
57
  klass.new(**args)
@@ -65,7 +65,10 @@ module Shirinji
65
65
  end
66
66
 
67
67
  def resolve_attribute(bean, arg)
68
- (attr = bean.attributes[arg]) ? attr.reference : arg
68
+ return arg unless (attr = bean.attributes[arg])
69
+ return attr.value if attr.value
70
+
71
+ resolve(attr.reference)
69
72
  end
70
73
 
71
74
  def check_params!(params)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Shirinji
4
- VERSION = '0.0.4'
4
+ VERSION = '0.0.5'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shirinji
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Dutey
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-08-23 00:00:00.000000000 Z
11
+ date: 2019-10-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -87,8 +87,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  requirements: []
90
- rubyforge_project:
91
- rubygems_version: 2.6.14
90
+ rubygems_version: 3.0.3
92
91
  signing_key:
93
92
  specification_version: 4
94
93
  summary: Dependencies injection made easy