summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/parser_test.rb14
1 files changed, 11 insertions, 3 deletions
diff --git a/test/parser_test.rb b/test/parser_test.rb
index 95d3bebc..860ffaf3 100644
--- a/test/parser_test.rb
+++ b/test/parser_test.rb
@@ -395,13 +395,16 @@ context 'Parser' do
test 'replace implicit authors if value of authors attribute does not match computed value' do
input = <<~'EOS'
Doc Writer; Junior Writer
- :authors: Stuart Rackham; Dan Allen
+ :authors: Stuart Rackham; Dan Allen; Sarah White
EOS
doc = empty_document
- parse_header_metadata input, doc
- assert_equal 'Stuart Rackham, Dan Allen', doc.attributes['authors']
+ metadata = parse_header_metadata input, doc
+ assert_equal metadata['authorcount'], 3
+ assert_equal doc.attributes['authorcount'], 3
+ assert_equal 'Stuart Rackham, Dan Allen, Sarah White', doc.attributes['authors']
assert_equal 'Stuart Rackham', doc.attributes['author_1']
assert_equal 'Dan Allen', doc.attributes['author_2']
+ assert_equal 'Sarah White', doc.attributes['author_3']
end
test 'sets authorcount to 0 if document has no authors' do
@@ -412,6 +415,11 @@ context 'Parser' do
assert_equal 0, metadata['authorcount']
end
+ test 'returns empty hash if document has no authors and invoked without document' do
+ metadata = parse_header_metadata ''
+ assert_empty metadata
+ end
+
test 'does not drop name joiner when using multiple authors' do
input = 'Kismet Chameleon; Lazarus het_Draeke'
doc = empty_document