spec/i18n/text_spec.rb in yard-0.9.16 vs spec/i18n/text_spec.rb in yard-0.9.17
- old
+ new
@@ -1,184 +1,184 @@
-# frozen_string_literal: true
-
-RSpec.describe YARD::I18n::Text do
- describe "#extract_messages" do
- def extract_messages(input, options = {})
- text = YARD::I18n::Text.new(StringIO.new(input), options)
- messages = []
- text.extract_messages do |*message|
- messages << message
- end
- messages
- end
-
- describe "Header" do
- it "extracts at attribute" do
- text = <<-eot
-# @title Getting Started Guide
-
-# Getting Started with YARD
-eot
- expect(extract_messages(text, :have_header => true)).to eq(
- [[:attribute, "title", "Getting Started Guide", 1],
- [:paragraph, "# Getting Started with YARD", 3]]
- )
- end
-
- it "ignores markup line" do
- text = <<-eot
-#!markdown
-# @title Getting Started Guide
-
-# Getting Started with YARD
-eot
- expect(extract_messages(text, :have_header => true)).to eq(
- [[:attribute, "title", "Getting Started Guide", 2],
- [:paragraph, "# Getting Started with YARD", 4]]
- )
- end
-
- it "terminates header block by markup line not at the first line" do
- text = <<-eot
-# @title Getting Started Guide
-#!markdown
-
-# Getting Started with YARD
-eot
- expect(extract_messages(text, :have_header => true)).to eq(
- [[:attribute, "title", "Getting Started Guide", 1],
- [:paragraph, "#!markdown", 2],
- [:paragraph, "# Getting Started with YARD", 4]]
- )
- end
- end
-
- describe "Body" do
- it "splits to paragraphs" do
- paragraph1 = <<-eop.strip
-Note that class methods must not be referred to with the "::" namespace
-separator. Only modules, classes and constants should use "::".
-eop
- paragraph2 = <<-eop.strip
-You can also do lookups on any installed gems. Just make sure to build the
-.yardoc databases for installed gems with:
-eop
- text = <<-eot
-#{paragraph1}
-
-#{paragraph2}
-eot
- expect(extract_messages(text)).to eq(
- [[:paragraph, paragraph1, 1],
- [:paragraph, paragraph2, 4]]
- )
- end
- end
- end
-
- describe "#translate" do
- def locale
- locale = YARD::I18n::Locale.new("fr")
- messages = locale.instance_variable_get(:@messages)
- messages["markdown"] = "markdown (markdown in fr)"
- messages["Hello"] = "Bonjour (Hello in fr)"
- messages["Paragraph 1."] = "Paragraphe 1."
- messages["Paragraph 2."] = "Paragraphe 2."
- locale
- end
-
- def translate(input, options = {})
- text = YARD::I18n::Text.new(StringIO.new(input), options)
- text.translate(locale)
- end
-
- describe "Header" do
- it "extracts at attribute" do
- text = <<-eot
-# @title Hello
-
-# Getting Started with YARD
-
-Paragraph.
-eot
- expect(translate(text, :have_header => true)).to eq <<-eot
-# @title Bonjour (Hello in fr)
-
-# Getting Started with YARD
-
-Paragraph.
-eot
- end
-
- it "ignores markup line" do
- text = <<-eot
-#!markdown
-# @title Hello
-
-# Getting Started with YARD
-
-Paragraph.
-eot
- expect(translate(text, :have_header => true)).to eq <<-eot
-#!markdown
-# @title Bonjour (Hello in fr)
-
-# Getting Started with YARD
-
-Paragraph.
-eot
- end
- end
-
- describe "Body" do
- it "splits to paragraphs" do
- paragraph1 = <<-eop.strip
-Paragraph 1.
-eop
- paragraph2 = <<-eop.strip
-Paragraph 2.
-eop
- text = <<-eot
-#{paragraph1}
-
-#{paragraph2}
-eot
- expect(translate(text)).to eq <<-eot
-Paragraphe 1.
-
-Paragraphe 2.
-eot
- end
-
- it "does not modify non-translated message" do
- nonexistent_paragraph = <<-eop.strip
-Nonexsitent paragraph.
-eop
- text = <<-eot
-#{nonexistent_paragraph}
-eot
- expect(translate(text)).to eq <<-eot
-#{nonexistent_paragraph}
-eot
- end
-
- it "keeps empty lines" do
- text = <<-eot
-Paragraph 1.
-
-
-
-
-Paragraph 2.
-eot
- expect(translate(text)).to eq <<-eot
-Paragraphe 1.
-
-
-
-
-Paragraphe 2.
-eot
- end
- end
- end
-end
+# frozen_string_literal: true
+
+RSpec.describe YARD::I18n::Text do
+ describe "#extract_messages" do
+ def extract_messages(input, options = {})
+ text = YARD::I18n::Text.new(StringIO.new(input), options)
+ messages = []
+ text.extract_messages do |*message|
+ messages << message
+ end
+ messages
+ end
+
+ describe "Header" do
+ it "extracts at attribute" do
+ text = <<-eot
+# @title Getting Started Guide
+
+# Getting Started with YARD
+eot
+ expect(extract_messages(text, :have_header => true)).to eq(
+ [[:attribute, "title", "Getting Started Guide", 1],
+ [:paragraph, "# Getting Started with YARD", 3]]
+ )
+ end
+
+ it "ignores markup line" do
+ text = <<-eot
+#!markdown
+# @title Getting Started Guide
+
+# Getting Started with YARD
+eot
+ expect(extract_messages(text, :have_header => true)).to eq(
+ [[:attribute, "title", "Getting Started Guide", 2],
+ [:paragraph, "# Getting Started with YARD", 4]]
+ )
+ end
+
+ it "terminates header block by markup line not at the first line" do
+ text = <<-eot
+# @title Getting Started Guide
+#!markdown
+
+# Getting Started with YARD
+eot
+ expect(extract_messages(text, :have_header => true)).to eq(
+ [[:attribute, "title", "Getting Started Guide", 1],
+ [:paragraph, "#!markdown", 2],
+ [:paragraph, "# Getting Started with YARD", 4]]
+ )
+ end
+ end
+
+ describe "Body" do
+ it "splits to paragraphs" do
+ paragraph1 = <<-eop.strip
+Note that class methods must not be referred to with the "::" namespace
+separator. Only modules, classes and constants should use "::".
+eop
+ paragraph2 = <<-eop.strip
+You can also do lookups on any installed gems. Just make sure to build the
+.yardoc databases for installed gems with:
+eop
+ text = <<-eot
+#{paragraph1}
+
+#{paragraph2}
+eot
+ expect(extract_messages(text)).to eq(
+ [[:paragraph, paragraph1, 1],
+ [:paragraph, paragraph2, 4]]
+ )
+ end
+ end
+ end
+
+ describe "#translate" do
+ def locale
+ locale = YARD::I18n::Locale.new("fr")
+ messages = locale.instance_variable_get(:@messages)
+ messages["markdown"] = "markdown (markdown in fr)"
+ messages["Hello"] = "Bonjour (Hello in fr)"
+ messages["Paragraph 1."] = "Paragraphe 1."
+ messages["Paragraph 2."] = "Paragraphe 2."
+ locale
+ end
+
+ def translate(input, options = {})
+ text = YARD::I18n::Text.new(StringIO.new(input), options)
+ text.translate(locale)
+ end
+
+ describe "Header" do
+ it "extracts at attribute" do
+ text = <<-eot
+# @title Hello
+
+# Getting Started with YARD
+
+Paragraph.
+eot
+ expect(translate(text, :have_header => true)).to eq <<-eot
+# @title Bonjour (Hello in fr)
+
+# Getting Started with YARD
+
+Paragraph.
+eot
+ end
+
+ it "ignores markup line" do
+ text = <<-eot
+#!markdown
+# @title Hello
+
+# Getting Started with YARD
+
+Paragraph.
+eot
+ expect(translate(text, :have_header => true)).to eq <<-eot
+#!markdown
+# @title Bonjour (Hello in fr)
+
+# Getting Started with YARD
+
+Paragraph.
+eot
+ end
+ end
+
+ describe "Body" do
+ it "splits to paragraphs" do
+ paragraph1 = <<-eop.strip
+Paragraph 1.
+eop
+ paragraph2 = <<-eop.strip
+Paragraph 2.
+eop
+ text = <<-eot
+#{paragraph1}
+
+#{paragraph2}
+eot
+ expect(translate(text)).to eq <<-eot
+Paragraphe 1.
+
+Paragraphe 2.
+eot
+ end
+
+ it "does not modify non-translated message" do
+ nonexistent_paragraph = <<-eop.strip
+Nonexsitent paragraph.
+eop
+ text = <<-eot
+#{nonexistent_paragraph}
+eot
+ expect(translate(text)).to eq <<-eot
+#{nonexistent_paragraph}
+eot
+ end
+
+ it "keeps empty lines" do
+ text = <<-eot
+Paragraph 1.
+
+
+
+
+Paragraph 2.
+eot
+ expect(translate(text)).to eq <<-eot
+Paragraphe 1.
+
+
+
+
+Paragraphe 2.
+eot
+ end
+ end
+ end
+end