cli_miami 1.0.1.pre → 1.0.3.pre

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
  SHA1:
3
- metadata.gz: 4027d96f33ad46d4e0859f84b1c9399ce569a8d3
4
- data.tar.gz: b1442d5a721d9cedfd612ac86d73057617b2b808
3
+ metadata.gz: 719e8649e44771d53e0bca18acd408340159a58b
4
+ data.tar.gz: 7e59f4a97ad922d23a819bc73b5f28e9db79f711
5
5
  SHA512:
6
- metadata.gz: 1f7b627d647f53c1f8cfd48cc3adbc5a02dbecdbf61a3581eeb3b24879d3b60cbecdee265b2461c6f08f7576082c2f9c23b1e8a032413a891fee5dc5f4e5fbeb
7
- data.tar.gz: 2be499f83f714ac02761f01baa93e5fe0f2a133f78022700bd665490ca72044183504d59dfacd13534e3e46a23fed18076b90b54e2785bb11d8e78be4e89ef21
6
+ metadata.gz: 9ef54e39d4cac9503534f0b66cc378f8992c6427868087f8901ea7c72e8491a3a852a66a5bbb5918499f47831dbe3c54e147794a68f3890cace9b5587c04b7e5
7
+ data.tar.gz: 80e5523952bf696fe7bae610f839d187d23643575013da129778203cb58c57fa793a6bee856545e5f625282461f0fb5e4f2e70a35fa0f6da45baee2b4e21ef68
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![gem version](https://badge.fury.io/rb/CLI-Miami.svg)](https://rubygems.org/gems/CLI-Miami)
1
+ [![gem version](https://badge.fury.io/rb/cli_miami.svg)](https://badge.fury.io/rb/cli_miami)
2
2
  [![dependencies](https://gemnasium.com/brewster1134/CLI-Miami.svg)](https://gemnasium.com/brewster1134/CLI-Miami)
3
3
  [![docs](http://inch-ci.org/github/brewster1134/CLI-Miami.svg?branch=master)](http://inch-ci.org/github/brewster1134/CLI-Miami)
4
4
  [![build](https://travis-ci.org/brewster1134/CLI-Miami.svg?branch=master)](https://travis-ci.org/brewster1134/CLI-Miami)
data/lib/namespaced.rb CHANGED
@@ -14,6 +14,15 @@ class CliMiami
14
14
  # Create a new custom preset
15
15
  def self.set_preset type, options
16
16
  raise ArgumentError, 'Preset must be a hash of options' unless options.is_a? Hash
17
+
18
+ # extend preset if it exists
19
+ extend_preset = options.delete(:preset)
20
+ if extend_preset && @@presets[extend_preset.to_sym]
21
+ extend_preset_options = @@presets[extend_preset.to_sym]
22
+ options = extend_preset_options.merge! options
23
+ end
24
+
25
+ # set options to global var
17
26
  @@presets[type] = options
18
27
  end
19
28
 
@@ -12,6 +12,21 @@ describe CliMiami do
12
12
 
13
13
  expect(subject.class_variable_get(:@@presets)[:foo]).to eq(bar: :baz)
14
14
  end
15
+
16
+ it 'should extend an existing preset' do
17
+ subject.set_preset :foo,
18
+ color: :red,
19
+ bg_color: :blue
20
+
21
+ subject.set_preset :bar,
22
+ preset: :foo,
23
+ bg_color: :green
24
+
25
+ expect(subject.class_variable_get(:@@presets)[:bar]).to eq(
26
+ color: :red,
27
+ bg_color: :green
28
+ )
29
+ end
15
30
  end
16
31
 
17
32
  describe '.get_options' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cli_miami
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1.pre
4
+ version: 1.0.3.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Brewster
@@ -128,14 +128,20 @@ dependencies:
128
128
  requirements:
129
129
  - - ~>
130
130
  - !ruby/object:Gem::Version
131
- version: 3.0.6
131
+ version: 3.0.7
132
+ - - '>='
133
+ - !ruby/object:Gem::Version
134
+ version: 3.0.7
132
135
  type: :development
133
136
  prerelease: false
134
137
  version_requirements: !ruby/object:Gem::Requirement
135
138
  requirements:
136
139
  - - ~>
137
140
  - !ruby/object:Gem::Version
138
- version: 3.0.6
141
+ version: 3.0.7
142
+ - - '>='
143
+ - !ruby/object:Gem::Version
144
+ version: 3.0.7
139
145
  - !ruby/object:Gem::Dependency
140
146
  name: rspec
141
147
  requirement: !ruby/object:Gem::Requirement