semi 0.1.3 → 0.2.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: 2970b95df23f0e5baf5044fdb2ce737f1b97b227
4
- data.tar.gz: 9f2d09c24f0beaafa3ca85bfb9db2eeaa6fec31e
3
+ metadata.gz: 27d8db903292d4ea08917e7a7ed4c0f790bf256c
4
+ data.tar.gz: d0f87a3cd58e18b32b1c5dc5f5bfb2493c59e7a6
5
5
  SHA512:
6
- metadata.gz: 5c52fd7fb06f4e2344114da5eac355d4629c5ac348ed5fe79a3e04e1b33f55d4fbf3dde8cdc8518f1deeb20d43fded3af5f680d4ab1d94ec6a5af09adc65d566
7
- data.tar.gz: 27fce223673b8e6331e84be674d6a43ceb5169f20d9e18dd613d9741171f496c5b3d2108d756e103491fba8613ee6913693da66e737051af9ad2ae9e5cf68999
6
+ metadata.gz: 31cf21808a71321d4fa405cd816db173601df2277b9536f69bb5c7a63e9d4aaf3fdd44e7ef8b79c75aa9baf038699fd90ad8d869119be38c6c7b8b618fc4512e
7
+ data.tar.gz: d9b16981fab58f495df5f7b42e4c03783f2d53d4a2170315fcc403d69f8aff8dd658193e26ddb427596439c0c1398e5e887d6affb94fdf7e9f7d3676a2a4f606
data/lib/semi/driver.rb CHANGED
@@ -18,7 +18,12 @@ module Semi
18
18
  begin
19
19
  Semi::validate(@dictionary[key], @config.validators[key])
20
20
  rescue Semi::ValidationError => err
21
- puts "Can not validate #{key}: #{err}"
21
+ if @dictionary.include? key
22
+ puts "Can not validate #{key}: #{err}"
23
+ elsif @config.validators[key].include? 'required'
24
+ puts "#{key} is a required value, but it was not found."
25
+ exit(5)
26
+ end
22
27
  end
23
28
  }
24
29
 
@@ -59,7 +64,7 @@ module Semi
59
64
 
60
65
 
61
66
  # Execute the command line
62
- puts "Executing: #{args}"
67
+ #puts "Executing: #{args}"
63
68
  exec([args].flatten.join(' '))
64
69
  end
65
70
 
data/lib/semi/validate.rb CHANGED
@@ -11,8 +11,8 @@ module Semi
11
11
 
12
12
  tests.keys.each do |rule|
13
13
  case rule
14
- when 'required'
15
- tests[rule] = true unless value.empty?
14
+ when 'required'
15
+ tests[rule] = true unless value.nil?
16
16
  when 'integer'
17
17
  tests[rule] = true if value.is_a? Integer
18
18
  when 'string'
data/lib/semi/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Semi
2
- version = '0.1.3'
2
+ version = '0.2.0'
3
3
  end
@@ -12,7 +12,11 @@ describe "Semi::validator" do
12
12
  ['foobar', 'string,required', true],
13
13
  ['foobar', 'string, required', true],
14
14
  ['foobar', '/foo/', true],
15
- ['foobar', '/fubar/', false]
15
+ ['foobar', '/fubar/', false],
16
+ ['foobar', ['/foo/'], true],
17
+ ['foobar', ['/fubar/'], false],
18
+ [nil, 'required', false],
19
+ [nil, ['required'], false]
16
20
  ].each do |ruleset|
17
21
  it "validates #{ruleset[0]} against #{ruleset[1]}" do
18
22
  if ruleset[2] == true
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerard Hickey