diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index b3775706e..4042152fd 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -51,10 +51,12 @@ module ApplicationHelper
def format_text(text, **options)
raw DTextRagel.parse(text, **options)
+ rescue DTextRagel::Error => e
+ raw ""
end
def strip_dtext(text)
- raw(DTextRagel.parse_strip(text))
+ format_text(text, strip: true)
end
def error_messages_for(instance_name)
diff --git a/app/presenters/wiki_page_presenter.rb b/app/presenters/wiki_page_presenter.rb
index 2207cb3ae..f70822be3 100644
--- a/app/presenters/wiki_page_presenter.rb
+++ b/app/presenters/wiki_page_presenter.rb
@@ -9,10 +9,6 @@ class WikiPagePresenter
wiki_page.body
end
- def blurb
- DTextRagel.parse_strip(excerpt.to_s)
- end
-
# Produce a formatted page that shows the difference between two versions of a page.
def diff(other_version)
pattern = Regexp.new('(?:<.+?>)|(?:[0-9_A-Za-z\x80-\xff]+[\x09\x20]?)|(?:[ \t]+)|(?:\r?\n)|(?:.+?)')
diff --git a/app/views/posts/index.html.erb b/app/views/posts/index.html.erb
index ec328ec91..325eba7c9 100644
--- a/app/views/posts/index.html.erb
+++ b/app/views/posts/index.html.erb
@@ -72,7 +72,7 @@
<%= content_tag :link, nil, rel: "prev", href: prev_page_url %>
<% end %>
<% if @post_set.has_wiki? %>
-
+
<% else %>
<% end %>
diff --git a/app/views/wiki_pages/show.html.erb b/app/views/wiki_pages/show.html.erb
index c7c278abb..113ba7515 100644
--- a/app/views/wiki_pages/show.html.erb
+++ b/app/views/wiki_pages/show.html.erb
@@ -44,7 +44,7 @@
<% end %>
<% content_for(:html_header) do %>
-
+
<% end %>
<%= render "secondary_links" %>
diff --git a/test/functional/iqdb_queries_controller_test.rb b/test/functional/iqdb_queries_controller_test.rb
index 2e6cba454..2313cb766 100644
--- a/test/functional/iqdb_queries_controller_test.rb
+++ b/test/functional/iqdb_queries_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/iqdb_test_helper'
class IqdbQueriesControllerTest < ActionController::TestCase
- include IqdbTestHelper
-
context "The iqdb controller" do
setup do
@user = FactoryGirl.create(:user)
diff --git a/test/functional/pool_elements_controller_test.rb b/test/functional/pool_elements_controller_test.rb
index 2ef94d40f..d9e05ce8d 100644
--- a/test/functional/pool_elements_controller_test.rb
+++ b/test/functional/pool_elements_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
class PoolElementsControllerTest < ActionController::TestCase
- include PoolArchiveTestHelper
-
context "The pools posts controller" do
setup do
mock_pool_archive_service!
diff --git a/test/functional/pool_versions_controller_test.rb b/test/functional/pool_versions_controller_test.rb
index 1a1c81ec3..049c1d43e 100644
--- a/test/functional/pool_versions_controller_test.rb
+++ b/test/functional/pool_versions_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
class PoolVersionsControllerTest < ActionController::TestCase
- include PoolArchiveTestHelper
-
context "The pool versions controller" do
setup do
mock_pool_archive_service!
diff --git a/test/functional/pools_controller_test.rb b/test/functional/pools_controller_test.rb
index c19465da5..93d11fe9c 100644
--- a/test/functional/pools_controller_test.rb
+++ b/test/functional/pools_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
class PoolsControllerTest < ActionController::TestCase
- include PoolArchiveTestHelper
-
context "The pools controller" do
setup do
Timecop.travel(1.month.ago) do
diff --git a/test/functional/post_versions_controller_test.rb b/test/functional/post_versions_controller_test.rb
index e4972e703..005e0a038 100644
--- a/test/functional/post_versions_controller_test.rb
+++ b/test/functional/post_versions_controller_test.rb
@@ -1,11 +1,9 @@
require 'test_helper'
-require 'helpers/post_archive_test_helper'
class PostVersionsControllerTest < ActionController::TestCase
- include PostArchiveTestHelper
-
def setup
super
+
@user = FactoryGirl.create(:user)
CurrentUser.user = @user
CurrentUser.ip_addr = "127.0.0.1"
@@ -13,6 +11,7 @@ class PostVersionsControllerTest < ActionController::TestCase
def teardown
super
+
CurrentUser.user = nil
CurrentUser.ip_addr = nil
end
diff --git a/test/functional/reports_controller_test.rb b/test/functional/reports_controller_test.rb
index 6df87b494..d1fb32163 100644
--- a/test/functional/reports_controller_test.rb
+++ b/test/functional/reports_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/post_archive_test_helper'
class ReportsControllerTest < ActionController::TestCase
- include PostArchiveTestHelper
-
def setup
super
diff --git a/test/functional/saved_searches_controller_test.rb b/test/functional/saved_searches_controller_test.rb
index c80d4c34f..8cee03c00 100644
--- a/test/functional/saved_searches_controller_test.rb
+++ b/test/functional/saved_searches_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/saved_search_test_helper'
class SavedSearchesControllerTest < ActionController::TestCase
- include SavedSearchTestHelper
-
context "The saved searches controller" do
setup do
@user = FactoryGirl.create(:user)
diff --git a/test/functional/uploads_controller_test.rb b/test/functional/uploads_controller_test.rb
index 3413f53f0..74ecac5bd 100644
--- a/test/functional/uploads_controller_test.rb
+++ b/test/functional/uploads_controller_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/iqdb_test_helper'
class UploadsControllerTest < ActionController::TestCase
- include IqdbTestHelper
-
def setup
super
mock_iqdb_service!
diff --git a/test/helpers/application_helper_test.rb b/test/helpers/application_helper_test.rb
new file mode 100644
index 000000000..f9f0214de
--- /dev/null
+++ b/test/helpers/application_helper_test.rb
@@ -0,0 +1,14 @@
+require "test_helper"
+
+class ApplicationHelperTest < ActionView::TestCase
+ context "The application helper" do
+ context "format_text method" do
+ should "not raise an exception for invalid DText" do
+ dtext = "* a\n" * 513
+
+ assert_nothing_raised { format_text(dtext) }
+ assert_equal("", format_text(dtext))
+ end
+ end
+ end
+end
diff --git a/test/test_helper.rb b/test/test_helper.rb
index 9b5338dca..6ab56437e 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -14,7 +14,7 @@ require 'cache'
require 'webmock/minitest'
Dir[File.expand_path(File.dirname(__FILE__) + "/factories/*.rb")].each {|file| require file}
-Dir[File.expand_path(File.dirname(__FILE__) + "/helpers/*.rb")].each {|file| require file}
+Dir[File.expand_path(File.dirname(__FILE__) + "/test_helpers/*.rb")].each {|file| require file}
Shoulda::Matchers.configure do |config|
config.integrate do |with|
@@ -24,8 +24,12 @@ end
class ActiveSupport::TestCase
include PostArchiveTestHelper
+ include PoolArchiveTestHelper
include ReportbooruHelper
include DownloadTestHelper
+ include IqdbTestHelper
+ include SavedSearchTestHelper
+ include UploadTestHelper
setup do
mock_popular_search_service!
@@ -40,8 +44,6 @@ class ActiveSupport::TestCase
end
class ActionController::TestCase
- include PostArchiveTestHelper
-
def assert_authentication_passes(action, http_method, role, params, session)
__send__(http_method, action, params, session.merge(:user_id => @users[role].id))
assert_response :success
diff --git a/test/helpers/download_helper.rb b/test/test_helpers/download_helper.rb
similarity index 100%
rename from test/helpers/download_helper.rb
rename to test/test_helpers/download_helper.rb
diff --git a/test/helpers/iqdb_test_helper.rb b/test/test_helpers/iqdb_test_helper.rb
similarity index 100%
rename from test/helpers/iqdb_test_helper.rb
rename to test/test_helpers/iqdb_test_helper.rb
diff --git a/test/helpers/pool_archive_test_helper.rb b/test/test_helpers/pool_archive_test_helper.rb
similarity index 100%
rename from test/helpers/pool_archive_test_helper.rb
rename to test/test_helpers/pool_archive_test_helper.rb
diff --git a/test/helpers/post_archive_test_helper.rb b/test/test_helpers/post_archive_test_helper.rb
similarity index 100%
rename from test/helpers/post_archive_test_helper.rb
rename to test/test_helpers/post_archive_test_helper.rb
diff --git a/test/helpers/reportbooru_helper.rb b/test/test_helpers/reportbooru_helper.rb
similarity index 100%
rename from test/helpers/reportbooru_helper.rb
rename to test/test_helpers/reportbooru_helper.rb
diff --git a/test/helpers/saved_search_test_helper.rb b/test/test_helpers/saved_search_test_helper.rb
similarity index 100%
rename from test/helpers/saved_search_test_helper.rb
rename to test/test_helpers/saved_search_test_helper.rb
diff --git a/test/helpers/upload_test_helper.rb b/test/test_helpers/upload_test_helper.rb
similarity index 100%
rename from test/helpers/upload_test_helper.rb
rename to test/test_helpers/upload_test_helper.rb
diff --git a/test/unit/moderator/tag_batch_change_test.rb b/test/unit/moderator/tag_batch_change_test.rb
index df03084b3..dd5248273 100644
--- a/test/unit/moderator/tag_batch_change_test.rb
+++ b/test/unit/moderator/tag_batch_change_test.rb
@@ -1,10 +1,7 @@
require "test_helper"
-require 'helpers/saved_search_test_helper'
module Moderator
class TagBatchChangeTest < ActiveSupport::TestCase
- include SavedSearchTestHelper
-
def setup
super
mock_saved_search_service!
diff --git a/test/unit/pool_test.rb b/test/unit/pool_test.rb
index 3362dadf3..a7ceb927e 100644
--- a/test/unit/pool_test.rb
+++ b/test/unit/pool_test.rb
@@ -1,11 +1,8 @@
# encoding: utf-8
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
class PoolTest < ActiveSupport::TestCase
- include PoolArchiveTestHelper
-
setup do
Timecop.travel(1.month.ago) do
@user = FactoryGirl.create(:user)
diff --git a/test/unit/post_replacement_test.rb b/test/unit/post_replacement_test.rb
index d71327795..08ecea2e5 100644
--- a/test/unit/post_replacement_test.rb
+++ b/test/unit/post_replacement_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/iqdb_test_helper'
class PostReplacementTest < ActiveSupport::TestCase
- include IqdbTestHelper
-
def upload_file(path, filename, &block)
Tempfile.open do |file|
file.write(File.read(path))
diff --git a/test/unit/post_sets/pool_test.rb b/test/unit/post_sets/pool_test.rb
index bf48c8921..c548cccd6 100644
--- a/test/unit/post_sets/pool_test.rb
+++ b/test/unit/post_sets/pool_test.rb
@@ -1,10 +1,7 @@
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
module PostSets
class PoolTest < ActiveSupport::TestCase
- include PoolArchiveTestHelper
-
context "In all cases" do
setup do
@user = FactoryGirl.create(:user)
diff --git a/test/unit/post_test.rb b/test/unit/post_test.rb
index c86851a14..92cab5c23 100644
--- a/test/unit/post_test.rb
+++ b/test/unit/post_test.rb
@@ -1,13 +1,6 @@
require 'test_helper'
-require 'helpers/pool_archive_test_helper'
-require 'helpers/saved_search_test_helper'
-require 'helpers/iqdb_test_helper'
class PostTest < ActiveSupport::TestCase
- include PoolArchiveTestHelper
- include SavedSearchTestHelper
- include IqdbTestHelper
-
def assert_tag_match(posts, query)
assert_equal(posts.map(&:id), Post.tag_match(query).pluck(:id))
end
diff --git a/test/unit/saved_search_test.rb b/test/unit/saved_search_test.rb
index 0516b5fdc..89acdffac 100644
--- a/test/unit/saved_search_test.rb
+++ b/test/unit/saved_search_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/saved_search_test_helper'
class SavedSearchTest < ActiveSupport::TestCase
- include SavedSearchTestHelper
-
def setup
super
@user = FactoryGirl.create(:user)
diff --git a/test/unit/tag_alias_test.rb b/test/unit/tag_alias_test.rb
index bf38b6880..8b8a2e485 100644
--- a/test/unit/tag_alias_test.rb
+++ b/test/unit/tag_alias_test.rb
@@ -1,9 +1,6 @@
require 'test_helper'
-require 'helpers/saved_search_test_helper'
class TagAliasTest < ActiveSupport::TestCase
- include SavedSearchTestHelper
-
context "A tag alias" do
setup do
Timecop.travel(1.month.ago) do
diff --git a/test/unit/upload_test.rb b/test/unit/upload_test.rb
index 25920a7cd..022d66e6a 100644
--- a/test/unit/upload_test.rb
+++ b/test/unit/upload_test.rb
@@ -1,11 +1,6 @@
require 'test_helper'
-require 'helpers/iqdb_test_helper'
-require 'helpers/upload_test_helper'
class UploadTest < ActiveSupport::TestCase
- include IqdbTestHelper
- include UploadTestHelper
-
def setup
super