Sha256: 866706ddc3eaa4d7bec80262114c6dfb5affeed8829e990afb932cbba54a6ebf

Contents?: true

Size: 1.7 KB

Versions: 7

Compression:

Stored size: 1.7 KB

Contents

require 'spec_helper'

describe ReverseMarkdown::Converters::Text do

  let(:converter) { ReverseMarkdown::Converters::Text.new }

  it 'treats newline within text as a single whitespace' do
    input = node_for("<p>foo\nbar</p>")
    result = converter.convert(input)
    expect(result).to eq 'foo bar'
  end

  it 'removes leading newlines' do
    input = node_for("<p>\n\nfoo bar</p>")
    result = converter.convert(input)
    expect(result).to eq 'foo bar'
  end

  it 'removes trailing newlines' do
    input = node_for("<p>foo bar\n\n</p>")
    result = converter.convert(input)
    expect(result).to eq 'foo bar'
  end

  it 'keeps nbsps' do
    input = node_for("<p>foo\u00A0bar \u00A0</p>")
    result = converter.convert(input)
    expect(result).to eq "foo&nbsp;bar &nbsp;"
  end

  it 'keeps escaped HTML-ish characters' do
    input = node_for("<p>&lt;foo&gt;</p>")
    result = converter.convert(input)
    expect(result).to eq '\<foo\>'
  end

  context 'within backticks' do
    it "preserves single underscores" do
      input = node_for("<p>`foo_bar`</p>")
      result = converter.convert(input)
      expect(result).to eq '`foo_bar`'
    end

    it "preserves multiple underscores" do
      input = node_for("<p>`foo_bar __example__`</p>")
      result = converter.convert(input)
      expect(result).to eq '`foo_bar __example__`'
    end

    it "preserves single asterisks" do
      input = node_for("<p>`def foo *args`</p>")
      result = converter.convert(input)
      expect(result).to eq '`def foo *args`'
    end

    it "preserves multiple asterisks" do
      input = node_for("<p>`def foo 2***3`</p>")
      result = converter.convert(input)
      expect(result).to eq '`def foo 2***3`'
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
reverse_markdown-1.1.0 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.5 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.4 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.3 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.2 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.1 spec/lib/reverse_markdown/converters/text_spec.rb
reverse_markdown-1.0.0 spec/lib/reverse_markdown/converters/text_spec.rb