jekyll_frontmatter_tests 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/jekyll_frontmatter_tests.rb +10 -12
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 88e4c74f874f32f982b5e0023f1ddaa4f98b41ae
4
- data.tar.gz: 4e91934e6e0d3071e829b02cbf665a2da0843dcc
3
+ metadata.gz: 4487b50216c807a939eb3cfef2a03452454eb09f
4
+ data.tar.gz: b5282b256753b7d09bf2f1b7de6869de8d78a095
5
5
  SHA512:
6
- metadata.gz: d13d39f28494afb64a01d87ae1833d8ff8af4a2a721757f8cd7396d2ee462ef58fdd4db8826165a9f8d2c8ce6f2eb3c746ffc50f213f9dba84d05dda0e5fece8
7
- data.tar.gz: 899b45eeab1d52196e8468fe6b2a65c543840e153da30c2011c93f39f2674380fbe37d03277cb1286577df50dae840c6cd6b3b432ddf8a7033c5a26712f47db8
6
+ metadata.gz: 5176b451341b3871085b631929469e4ba31e2686f9e4ae81cc78d016bc74085c250dede044e366857459b79513d623bcc003225e54f87df9528be71b7064382c
7
+ data.tar.gz: bcd58e5fb6ad835d3c2c97a41bd6c3b70b8d83dbbdee7d615a674a8c56e4a9a64d350060cfa595e5b45d2fdb21a577df428a3a441043f9a96e3eebbf9477a7de
@@ -38,18 +38,20 @@ class FrontmatterTests < Jekyll::Command
38
38
  # Returns true or false depending on the success of the check.
39
39
  def process(schema)
40
40
  dir = File.join(schema['config']['path'])
41
- passfail = nil
41
+ passfail = Array.new
42
42
  Dir.open(dir).each do |f|
43
43
  file = File.open(File.join(dir, f))
44
44
  unless schema['config']['ignore'].include?(f)
45
45
  data = YAML.load_file(file)
46
- passfail = check_keys(data, schema.keys, f)
47
- passfail = check_types(data, schema)
46
+ passfail.push check_keys(data, schema.keys, f)
47
+ passfail.push check_types(data, schema)
48
48
  end
49
49
  end
50
- if passfail
50
+ passfail.keep_if { |p| p == false }
51
+ if passfail.empty?
51
52
  return true
52
53
  else
54
+ puts "There were #{passfail.count} errors".red
53
55
  return false
54
56
  end
55
57
  end
@@ -67,12 +69,12 @@ class FrontmatterTests < Jekyll::Command
67
69
  return false
68
70
  end
69
71
  diff = keys - target.keys
70
- if diff == []
72
+ if diff.empty?
71
73
  return true
72
74
  else
73
- puts "The file #{title} is missing the following keys:".red
75
+ puts "\nThe file #{title} is missing the following keys:".red
74
76
  for k in diff
75
- puts " * #{k}\n".red
77
+ puts " * #{k}".red
76
78
  end
77
79
  return false
78
80
  end
@@ -97,9 +99,6 @@ class FrontmatterTests < Jekyll::Command
97
99
  # processed against its respective schema.
98
100
  def test_collections(collections)
99
101
  yepnope = Array.new
100
- unless collections.class == Array
101
- require 'pry'; binding.pry
102
- end
103
102
  for c in collections
104
103
  puts "Testing #{c}".green
105
104
  yepnope.push process(loadschema("_#{c}.yml"))
@@ -148,7 +147,7 @@ class FrontmatterTests < Jekyll::Command
148
147
  results.push test_everything
149
148
  end
150
149
  results.keep_if { |t| t == false }
151
- if results[0]
150
+ if results.empty?
152
151
  puts 'Tests finished!'
153
152
  exit 0
154
153
  else
@@ -200,7 +199,6 @@ class FrontmatterTests < Jekyll::Command
200
199
  elsif type == "String" and data[key].class == String
201
200
  return true
202
201
  elsif type == "Date"
203
- require 'pry'; binding.pry
204
202
  return true
205
203
  else
206
204
  puts " * Data is of the wrong type for key #{key}, expected #{type} but was #{data[key].class}\n\n"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll_frontmatter_tests
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Boone
@@ -19,7 +19,7 @@ extensions: []
19
19
  extra_rdoc_files: []
20
20
  files:
21
21
  - lib/jekyll_frontmatter_tests.rb
22
- homepage: https://github.com/18f/jekyll-frontmatter-tests
22
+ homepage: https://rubygems.org/gems/jekyll_frontmatter_tests
23
23
  licenses:
24
24
  - CC0
25
25
  metadata: {}