From 22e4cef45a1f62552aa6cf4891f1921ebf51bd93 Mon Sep 17 00:00:00 2001 From: echarp Date: Sat, 10 Jun 2017 14:28:10 +0200 Subject: [PATCH] Better markdown output, for linuxfr --- app/helpers/events_helper.rb | 12 +++++------- test/helpers/events_helper_test.rb | 9 +++++++++ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb index 1e9e1b7b..037c5d2e 100644 --- a/app/helpers/events_helper.rb +++ b/app/helpers/events_helper.rb @@ -63,12 +63,10 @@ module EventsHelper tags: %w[p br h1 h2 h3 h4 table tr th td ul ol li a strong b em i sub sup], attributes: %w[href] - result = Kramdown::Document.new(desc, input: :html, line_width: line_width) - .to_kramdown - # Remove extraneous line feeds - return if result.nil? || result.blank? - result.gsub(/\n\n+/, ' - -').gsub(/\\([\"'])/, '\1') + Kramdown::Document.new(desc, input: :html, line_width: line_width) + .to_kramdown + .remove(/ +$/) # Remove extraneous line feeds + .gsub(/\\([\"'])/, '\1') # Remove slash before quotes + .gsub(/(\n\n)\n+/, '\1') # Fewer line feeds end end diff --git a/test/helpers/events_helper_test.rb b/test/helpers/events_helper_test.rb index 2e7567e0..2d091592 100644 --- a/test/helpers/events_helper_test.rb +++ b/test/helpers/events_helper_test.rb @@ -1,4 +1,13 @@ require 'test_helper' +# Test some event helper methods class EventsHelperTest < ActionView::TestCase + test 'Markdown with empty content' do + assert_equal '', to_markdown('') + assert_equal '', to_markdown(' ') + assert_equal "'", to_markdown("\'") + assert_equal '', to_markdown(' + +') + end end