From 93b705877945def477bcb978223c14ba9b17306f Mon Sep 17 00:00:00 2001 From: Sylvester Keil Date: Wed, 30 May 2018 16:12:10 +0200 Subject: [PATCH] Ensure 95% names from core model are accepted by parser --- spec/anystyle/normalizer/names_spec.rb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/spec/anystyle/normalizer/names_spec.rb b/spec/anystyle/normalizer/names_spec.rb index c068801..dac24d1 100644 --- a/spec/anystyle/normalizer/names_spec.rb +++ b/spec/anystyle/normalizer/names_spec.rb @@ -135,5 +135,22 @@ def n(author, **opts) expect(n('J Doe ...')).to eq([doe, others]) end end + + describe "Parsed Core Data" do + before :all do + @data = resource('parser/core.xml') + .map { |item| item.values_at(*Normalizer::Names.keys) } + .flatten + .uniq + .reject { |name| name.nil? || name[:other] } + end + + let(:lit) { @data.select { |name| !name[:literal].nil? } } + let(:nam) { @data.select { |name| name[:literal].nil? } } + + it "accepts more than 95% of names" do + expect(nam.length.to_f / @data.length).to be > 0.95 + end + end end end