nanoc-conref-fs 0.6.5 → 0.6.6

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: 508e4f55f3d5e47116a42a9dd4faa80ec5d2d670
4
- data.tar.gz: 34ae5fbcc93d229eb095b5bf12b11375b9d3b0f9
3
+ metadata.gz: c20f57a9b8ade6bcb512e52fe3926b5045019bcb
4
+ data.tar.gz: 4e8728448547dcd9518b02483ac54f776cdd0af1
5
5
  SHA512:
6
- metadata.gz: fe6fd13c2fd07c5e3650b7ba71fab39fee7cb299b039cd06e5969a087b02aed24fd30625d5a5f0bac270cbe7c8a169c2673522a3f1b3e6d3daf0c987b5db0d59
7
- data.tar.gz: 1f6eff45cb2348efd4421e7c385484e6ab6c03fa38e451db6f8cb9b5395a0d4075180f6c74e59f3376d8108da95936311539442e5a4292df78ee29122ff7eb5a
6
+ metadata.gz: 9039bce1972245ee83270d29deadeeb26c15f8e8188f009d0d4925cca1c939949341f6351f8673e46ddd0d4a33b3eef602fa44fa90a6ffe8d97c724a08467f7a
7
+ data.tar.gz: 48f3c11bd6e5ca9cb75fb88fbbbe62e6e6431154ba175d25ac23e3c745ffce843a3b52d58dd07aa100ff5659ae35980791d8e0d574f01dde1f45e3fab1be5b7e
@@ -37,6 +37,7 @@ module NanocConrefFS
37
37
  def find_hash_parents(toc, title)
38
38
  parents = ''
39
39
  toc.each_key do |key|
40
+ next if toc[key].nil?
40
41
  toc[key].each do |item|
41
42
  if item.is_a?(Hash)
42
43
  if item.keys.include?(title)
@@ -61,37 +62,46 @@ module NanocConrefFS
61
62
 
62
63
  # Given a category file that's an array, this method finds
63
64
  # the children of an item, probably a map topic
65
+ #
66
+ # toc - the array containing the table of contents
67
+ # title - the text title to return the children of
68
+ #
69
+ # Returns a flattened array of all descendants which could be empty.
64
70
  def find_array_children(toc, title)
65
- children = ''
66
71
  toc.each do |item|
67
72
  next unless item.is_a?(Hash)
68
73
  item.each_pair do |key, values|
69
74
  if key == title
70
75
  children = values.flatten
71
- break
76
+ return children
72
77
  end
73
78
  end
74
- break unless children.empty?
75
79
  end
76
- children
80
+ # Found no children
81
+ Array.new
77
82
  end
78
83
  module_function :find_array_children
79
84
 
80
85
  # Given a category file that's a hash, this method finds
81
86
  # the children of an item, probably a map topic
87
+ #
88
+ # toc - the hash containing the table of contents
89
+ # title - the text title to return the children of
90
+ #
91
+ # Returns a flattened array of all descendants which could be empty.
82
92
  def find_hash_children(toc, title)
83
- children = ''
84
93
  toc.each_key do |key|
94
+ next if toc[key].nil?
85
95
  toc[key].each do |item|
86
96
  next unless item.is_a?(Hash)
87
- unless item[title].nil?
97
+ if item[title]
88
98
  children = item.values.flatten
89
- break
99
+ return children
90
100
  end
91
101
  end
92
- break unless children.empty?
93
102
  end
94
- children
103
+ # Found no children
104
+ Array.new
95
105
  end
96
106
  module_function :find_hash_children
97
107
  end
@@ -1,8 +1,7 @@
1
1
  require_relative 'conrefifier'
2
2
  require 'active_support/core_ext/string'
3
3
 
4
- class ConrefFS < Nanoc::DataSource
5
- include Nanoc::DataSources::Filesystem
4
+ class ConrefFS < Nanoc::DataSources::Filesystem
6
5
  include NanocConrefFS::Variables
7
6
  include NanocConrefFS::Ancestry
8
7
 
@@ -70,12 +69,14 @@ class ConrefFS < Nanoc::DataSource
70
69
  # out of the frontmatter—all of them dealing with collision between
71
70
  # the { character in Liquid and its signfigance in YAML. We'll overload
72
71
  # the parse method here to resolve those issues ahead of time.
73
- def parse(content_filename, meta_filename, _kind)
72
+ def parse_with_frontmatter(content_filename)
74
73
  # Read data
75
74
  data = read(content_filename)
76
75
 
77
76
  # Check presence of metadata section
78
- return [{}, data] if data !~ /\A-{3,5}\s*$/
77
+ if data !~ /\A-{3,5}\s*$/
78
+ return ParseResult.new(content: data, attributes: {}, attributes_data: '')
79
+ end
79
80
 
80
81
  # Split data
81
82
  pieces = data.split(/^(-{5}|-{3})[ \t]*\r?\n?/, 3)
@@ -98,7 +99,7 @@ class ConrefFS < Nanoc::DataSource
98
99
  content = pieces[4]
99
100
 
100
101
  # Done
101
- [meta, content]
102
+ ParseResult.new(content: content, attributes: meta, attributes_data: pieces[2])
102
103
  end
103
104
 
104
105
  def self.create_ignore_rules(rep, file)
@@ -147,29 +148,4 @@ class ConrefFS < Nanoc::DataSource
147
148
  end
148
149
  articles
149
150
  end
150
-
151
- # This method is extracted from the Nanoc default FS
152
- def filename_for(base_filename, ext)
153
- if ext.nil?
154
- nil
155
- elsif ext.empty?
156
- base_filename
157
- else
158
- base_filename + '.' + ext
159
- end
160
- end
161
-
162
- # This method is extracted from the Nanoc default FS
163
- def identifier_for_filename(filename)
164
- if config[:identifier_type] == 'full'
165
- return Nanoc::Identifier.new(filename)
166
- end
167
-
168
- if filename =~ /(^|\/)index(\.[^\/]+)?$/
169
- regex = @config && @config[:allow_periods_in_identifiers] ? /\/?(index)?(\.[^\/\.]+)?$/ : /\/?index(\.[^\/]+)?$/
170
- else
171
- regex = @config && @config[:allow_periods_in_identifiers] ? /\.[^\/\.]+$/ : /\.[^\/]+$/
172
- end
173
- Nanoc::Identifier.new(filename.sub(regex, ''), type: :legacy)
174
- end
175
151
  end
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = 'nanoc-conref-fs'
6
- spec.version = '0.6.5'
6
+ spec.version = '0.6.6'
7
7
  spec.authors = ['Garen Torikian']
8
8
  spec.email = ['gjtorikian@gmail.com']
9
9
  spec.summary = 'A Nanoc filesystem to permit using conrefs/reusables in your content.'
@@ -15,9 +15,9 @@ Gem::Specification.new do |spec|
15
15
  spec.test_files = spec.files.grep(%r{^(test)/})
16
16
  spec.require_paths = ['lib']
17
17
 
18
- spec.add_runtime_dependency 'nanoc', '~> 4.0'
18
+ spec.add_runtime_dependency 'nanoc', '~> 4.3.0'
19
19
  spec.add_runtime_dependency 'activesupport', '~> 4.2'
20
- spec.add_runtime_dependency 'liquid', '~> 3.0'
20
+ spec.add_runtime_dependency 'liquid', '3.0.6'
21
21
 
22
22
  spec.add_development_dependency 'rake'
23
23
  spec.add_development_dependency 'minitest', '~> 5.8'
@@ -2,9 +2,7 @@ require 'test_helper'
2
2
 
3
3
  class AncestryTest < MiniTest::Test
4
4
  def test_it_renders_single_parents
5
- with_site(name: FIXTURES_DIR) do |site|
6
-
7
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
5
+ with_site do |site|
8
6
  site.compile
9
7
 
10
8
  output_file = read_output_file('parents', 'single_parent')
@@ -14,9 +12,7 @@ class AncestryTest < MiniTest::Test
14
12
  end
15
13
 
16
14
  def test_it_renders_two_parents
17
- with_site(name: FIXTURES_DIR) do |site|
18
-
19
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
15
+ with_site do |site|
20
16
  site.compile
21
17
 
22
18
  output_file = read_output_file('parents', 'two_parents')
@@ -26,9 +22,7 @@ class AncestryTest < MiniTest::Test
26
22
  end
27
23
 
28
24
  def test_it_renders_array_parents
29
- with_site(name: FIXTURES_DIR) do |site|
30
-
31
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
25
+ with_site do |site|
32
26
  site.compile
33
27
 
34
28
  output_file = read_output_file('parents', 'array_parents')
@@ -38,9 +32,7 @@ class AncestryTest < MiniTest::Test
38
32
  end
39
33
 
40
34
  def test_missing_category_title_does_not_blow_up_parents
41
- with_site(name: FIXTURES_DIR) do |site|
42
-
43
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
35
+ with_site do |site|
44
36
  site.compile
45
37
 
46
38
  output_file = read_output_file('parents', 'missing_title')
@@ -49,10 +41,18 @@ class AncestryTest < MiniTest::Test
49
41
  end
50
42
  end
51
43
 
52
- def test_it_renders_hash_children
53
- with_site(name: FIXTURES_DIR) do |site|
44
+ def test_it_renders_content_with_no_children
45
+ with_site do |site|
46
+ site.compile
54
47
 
55
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
48
+ output_file = read_output_file('children', 'no_children')
49
+ test_file = read_test_file('children', 'no_children')
50
+ assert_equal output_file, test_file
51
+ end
52
+ end
53
+
54
+ def test_it_renders_hash_children
55
+ with_site do |site|
56
56
  site.compile
57
57
 
58
58
  output_file = read_output_file('children', 'hash_children')
@@ -66,9 +66,7 @@ class AncestryTest < MiniTest::Test
66
66
  end
67
67
 
68
68
  def test_it_renders_array_children
69
- with_site(name: FIXTURES_DIR) do |site|
70
-
71
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
69
+ with_site do |site|
72
70
  site.compile
73
71
 
74
72
  output_file = read_output_file('children', 'array_children')
@@ -3,9 +3,7 @@ require 'test_helper'
3
3
  class DatafilesTest < MiniTest::Test
4
4
 
5
5
  def test_it_renders_conrefs_in_frontmatter
6
- with_site(name: FIXTURES_DIR) do |site|
7
-
8
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
6
+ with_site do |site|
9
7
  site.compile
10
8
 
11
9
  output_file = read_output_file('frontmatter', 'title')
@@ -15,9 +13,7 @@ class DatafilesTest < MiniTest::Test
15
13
  end
16
14
 
17
15
  def test_it_renders_conrefs_in_frontmatter_at_different_path
18
- with_site(name: FIXTURES_DIR) do |site|
19
-
20
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
16
+ with_site do |site|
21
17
  site.compile
22
18
 
23
19
  output_file = read_output_file('frontmatter', 'different')
@@ -27,9 +23,7 @@ class DatafilesTest < MiniTest::Test
27
23
  end
28
24
 
29
25
  def test_it_renders_conrefs_in_frontmatter_with_audience
30
- with_site(name: FIXTURES_DIR) do |site|
31
-
32
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
26
+ with_site do |site|
33
27
  site.compile
34
28
 
35
29
  output_file = read_output_file('frontmatter', 'audience')
@@ -39,9 +33,7 @@ class DatafilesTest < MiniTest::Test
39
33
  end
40
34
 
41
35
  def test_it_renders_nested_conrefs
42
- with_site(name: FIXTURES_DIR) do |site|
43
-
44
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
36
+ with_site do |site|
45
37
  site.compile
46
38
 
47
39
  output_file = read_output_file('datafiles', 'deep')
@@ -51,9 +43,7 @@ class DatafilesTest < MiniTest::Test
51
43
  end
52
44
 
53
45
  def test_it_renders_nested_conrefs
54
- with_site(name: FIXTURES_DIR) do |site|
55
-
56
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
46
+ with_site do |site|
57
47
  site.compile
58
48
 
59
49
  output_file = read_output_file('datafiles', 'deep')
@@ -63,9 +53,7 @@ class DatafilesTest < MiniTest::Test
63
53
  end
64
54
 
65
55
  def test_it_applies_any_attribute
66
- with_site(name: FIXTURES_DIR) do |site|
67
-
68
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
56
+ with_site do |site|
69
57
  site.compile
70
58
 
71
59
  output_file = read_output_file('attributes', 'attribute')
@@ -75,9 +63,7 @@ class DatafilesTest < MiniTest::Test
75
63
  end
76
64
 
77
65
  def test_it_does_not_obfuscate_content
78
- with_site(name: FIXTURES_DIR) do |site|
79
-
80
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
66
+ with_site do |site|
81
67
  site.compile
82
68
 
83
69
  output_file = read_output_file('obfuscation', 'admonitions')
@@ -91,9 +77,7 @@ class DatafilesTest < MiniTest::Test
91
77
  end
92
78
 
93
79
  def test_it_fetches_variables
94
- with_site(name: FIXTURES_DIR) do |site|
95
-
96
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
80
+ with_site do |site|
97
81
  site.compile
98
82
  output_file = read_output_file('datafiles', 'retrieve')
99
83
  test_file = read_test_file('datafiles', 'retrieve')
@@ -102,9 +86,7 @@ class DatafilesTest < MiniTest::Test
102
86
  end
103
87
 
104
88
  def test_it_ignores_unknown_tags
105
- with_site(name: FIXTURES_DIR) do |site|
106
-
107
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
89
+ with_site do |site|
108
90
  site.compile
109
91
 
110
92
  output_file = read_output_file('maliciousness', 'unknown')
@@ -114,9 +96,7 @@ class DatafilesTest < MiniTest::Test
114
96
  end
115
97
 
116
98
  def test_it_works_if_an_asterisk_is_the_first_character
117
- with_site(name: FIXTURES_DIR) do |site|
118
-
119
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
99
+ with_site do |site|
120
100
  site.compile
121
101
 
122
102
  output_file = read_output_file('maliciousness', 'asterisk_single')
@@ -126,9 +106,7 @@ class DatafilesTest < MiniTest::Test
126
106
  end
127
107
 
128
108
  def test_it_works_if_asterisks_are_the_first_two_characters
129
- with_site(name: FIXTURES_DIR) do |site|
130
-
131
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
109
+ with_site do |site|
132
110
  site.compile
133
111
 
134
112
  output_file = read_output_file('maliciousness', 'asterisk_double')
@@ -138,9 +116,7 @@ class DatafilesTest < MiniTest::Test
138
116
  end
139
117
 
140
118
  def test_raw_tags
141
- with_site(name: FIXTURES_DIR) do |site|
142
-
143
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
119
+ with_site do |site|
144
120
  site.compile
145
121
 
146
122
  output_file = read_output_file('liquid', 'raw')
@@ -151,9 +127,7 @@ class DatafilesTest < MiniTest::Test
151
127
  end
152
128
 
153
129
  def test_multiple_version_blocks
154
- with_site(name: FIXTURES_DIR) do |site|
155
-
156
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
130
+ with_site do |site|
157
131
  site.compile
158
132
 
159
133
  output_file = read_output_file('liquid', 'multiple_versions')
@@ -164,9 +138,7 @@ class DatafilesTest < MiniTest::Test
164
138
  end
165
139
 
166
140
  def test_multiple_outputs
167
- with_site(name: FIXTURES_DIR) do |site|
168
-
169
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
141
+ with_site do |site|
170
142
  site.compile
171
143
 
172
144
  single_var_github = read_output_file('multiple', 'single_var')
@@ -3,7 +3,7 @@ require 'test_helper'
3
3
  class DatafilesTest < MiniTest::Test
4
4
  def test_it_collects_the_files
5
5
  files = NanocConrefFS::Datafiles.collect_data(File.join(FIXTURES_DIR, 'data')).keys.sort
6
- names = %w(categories/category categories/nested categories/simple reusables/intro reusables/names variables/asterisks variables/empty variables/product)
6
+ names = %w(categories/category categories/empty_category categories/nested categories/simple reusables/intro reusables/names variables/asterisks variables/empty variables/product)
7
7
  names.map! { |name| File.join(FIXTURES_DIR, 'data', "#{name}.yml") }
8
8
  assert_equal files, names
9
9
  end
@@ -0,0 +1,18 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>
5
+ No children
6
+ </title>
7
+ </head>
8
+
9
+ <body>
10
+
11
+
12
+ Below should be an empty array.
13
+
14
+
15
+ []
16
+
17
+ </body>
18
+ </html>
@@ -0,0 +1,5 @@
1
+ ---
2
+ title: No children
3
+ ---
4
+
5
+ Below should be an empty array.
@@ -0,0 +1,4 @@
1
+ ---
2
+ title: Content article
3
+ ---
4
+
@@ -7,6 +7,7 @@ Collaborating:
7
7
  - Setting the default branch
8
8
  - Viewing branches in your repository
9
9
  - Creating and deleting branches within your repository
10
+ - No children
10
11
 
11
12
  - Some other things:
12
13
  - Blah1
@@ -0,0 +1,7 @@
1
+ Category with a thing:
2
+ - Content article
3
+
4
+ Empty Category:
5
+
6
+ Further category:
7
+ - Content article
@@ -1,4 +1,3 @@
1
-
2
1
  data_variables:
3
2
  -
4
3
  scope:
@@ -38,6 +37,13 @@ page_variables:
38
37
  path: "different"
39
38
  values:
40
39
  version: "2.0"
40
+ -
41
+ scope:
42
+ path: "empty-categories"
43
+ values:
44
+ version: "dotcom"
45
+ data_association: "categories.empty_category"
46
+ just_a_key: wow!
41
47
  -
42
48
  scope:
43
49
  path: "multiple_versions"
@@ -21,61 +21,9 @@ def read_test_file(dir, name)
21
21
  File.read(File.join(FIXTURES_DIR, 'content', dir, "#{name}.html")).gsub(/^\s*$/, '')
22
22
  end
23
23
 
24
- def with_site(params = {})
25
- # Build site name
26
- site_name = params[:name]
27
- if site_name.nil?
28
- @site_num ||= 0
29
- site_name = "site-#{@site_num}"
30
- @site_num += 1
31
- end
32
-
33
- # Build rules
34
- rules_content = <<EOS
35
- compile '*' do
36
- {{compilation_rule_content}}
37
- end
38
-
39
- route '*' do
40
- if item.binary?
41
- item.identifier.chop + (item[:extension] ? '.' + item[:extension] : '')
42
- else
43
- item.identifier + 'index.html'
44
- end
45
- end
46
-
47
- layout '*', :erb
48
- EOS
49
- rules_content.gsub!('{{compilation_rule_content}}', params[:compilation_rule_content] || '')
50
-
51
- # Create site
52
- unless File.directory?(site_name)
53
- FileUtils.mkdir_p(site_name)
54
- FileUtils.cd(site_name) do
55
- FileUtils.mkdir_p('content')
56
- FileUtils.mkdir_p('layouts')
57
- FileUtils.mkdir_p('lib')
58
- FileUtils.mkdir_p('output')
59
-
60
- if params[:has_layout]
61
- File.open('layouts/default.html', 'w') do |io|
62
- io.write('... <%= @yield %> ...')
63
- end
64
- end
65
-
66
- File.open('nanoc.yaml', 'w') do |io|
67
- io << 'string_pattern_type: legacy' << "\n"
68
- io << 'data_sources:' << "\n"
69
- io << ' -' << "\n"
70
- io << ' type: filesystem' << "\n"
71
- io << ' identifier_type: legacy' << "\n"
72
- end
73
- File.open('Rules', 'w') { |io| io.write(rules_content) }
74
- end
75
- end
76
-
24
+ def with_site
77
25
  # Yield site
78
- FileUtils.cd(site_name) do
26
+ FileUtils.cd(FIXTURES_DIR) do
79
27
  yield Nanoc::Int::SiteLoader.new.new_from_cwd
80
28
  end
81
29
  end
@@ -3,18 +3,16 @@ require 'test_helper'
3
3
  class VariablesTest < MiniTest::Test
4
4
 
5
5
  def test_it_fetches_variables
6
- with_site(name: FIXTURES_DIR) do |site|
7
-
8
- site = Nanoc::Int::SiteLoader.new.new_from_cwd
6
+ with_site do |site|
9
7
  site.compile
10
8
 
11
9
  assert_equal NanocConrefFS::Variables.variables[:default].keys, ['site']
12
- assert_equal NanocConrefFS::Variables.variables[:default]['site']['data'].keys, %w(categories reusables variables)
10
+ assert_equal NanocConrefFS::Variables.variables[:default]['site']['data'].keys.sort, %w(categories reusables variables)
13
11
  end
14
12
  end
15
13
 
16
14
  def test_it_fetches_datafiles
17
- with_site(name: FIXTURES_DIR) do |site|
15
+ with_site do
18
16
  file = NanocConrefFS::Variables.fetch_data_file('reusables.intro', :default)
19
17
  assert_equal file['frontmatter_intro'], 'Here I am, in the front.'
20
18
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nanoc-conref-fs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.5
4
+ version: 0.6.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Garen Torikian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-06 00:00:00.000000000 Z
11
+ date: 2016-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nanoc
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '4.0'
19
+ version: 4.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '4.0'
26
+ version: 4.3.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: liquid
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: 3.0.6
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: 3.0.6
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -128,10 +128,13 @@ files:
128
128
  - test/fixtures/content/children/hash_children.md
129
129
  - test/fixtures/content/children/later_hash_children.html
130
130
  - test/fixtures/content/children/later_hash_children.md
131
+ - test/fixtures/content/children/no_children.html
132
+ - test/fixtures/content/children/no_children.md
131
133
  - test/fixtures/content/datafiles/deep.html
132
134
  - test/fixtures/content/datafiles/deep.md
133
135
  - test/fixtures/content/datafiles/retrieve.html
134
136
  - test/fixtures/content/datafiles/retrieve.md
137
+ - test/fixtures/content/empty-categories/content-article.md
135
138
  - test/fixtures/content/frontmatter/audience.html
136
139
  - test/fixtures/content/frontmatter/audience.md
137
140
  - test/fixtures/content/frontmatter/different.html
@@ -164,6 +167,7 @@ files:
164
167
  - test/fixtures/content/parents/two_parents.html
165
168
  - test/fixtures/content/parents/two_parents.md
166
169
  - test/fixtures/data/categories/category.yml
170
+ - test/fixtures/data/categories/empty_category.yml
167
171
  - test/fixtures/data/categories/nested.yml
168
172
  - test/fixtures/data/categories/simple.yml
169
173
  - test/fixtures/data/reusables/intro.yml
@@ -215,10 +219,13 @@ test_files:
215
219
  - test/fixtures/content/children/hash_children.md
216
220
  - test/fixtures/content/children/later_hash_children.html
217
221
  - test/fixtures/content/children/later_hash_children.md
222
+ - test/fixtures/content/children/no_children.html
223
+ - test/fixtures/content/children/no_children.md
218
224
  - test/fixtures/content/datafiles/deep.html
219
225
  - test/fixtures/content/datafiles/deep.md
220
226
  - test/fixtures/content/datafiles/retrieve.html
221
227
  - test/fixtures/content/datafiles/retrieve.md
228
+ - test/fixtures/content/empty-categories/content-article.md
222
229
  - test/fixtures/content/frontmatter/audience.html
223
230
  - test/fixtures/content/frontmatter/audience.md
224
231
  - test/fixtures/content/frontmatter/different.html
@@ -251,6 +258,7 @@ test_files:
251
258
  - test/fixtures/content/parents/two_parents.html
252
259
  - test/fixtures/content/parents/two_parents.md
253
260
  - test/fixtures/data/categories/category.yml
261
+ - test/fixtures/data/categories/empty_category.yml
254
262
  - test/fixtures/data/categories/nested.yml
255
263
  - test/fixtures/data/categories/simple.yml
256
264
  - test/fixtures/data/reusables/intro.yml