nanoc-conref-fs 0.6.5 → 0.6.6

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: 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