From f9d41b4c697d714ca8b3b1fe4b829142921b7255 Mon Sep 17 00:00:00 2001 From: Siobhan Brown Date: Mon, 1 Aug 2022 17:16:25 +0100 Subject: [PATCH] Changes for Rails 6, plus reverted using twitter-text v2 to avoid conflicts in vam-web --- lib/sir_trevor_rails/blocks/tweet_block.rb | 2 +- lib/sir_trevor_rails/view_resolver.rb | 4 ++++ sir_trevor_rails.gemspec | 2 +- spec/integration/editing_spec.rb | 4 ++-- spec/integration/rendering_spec.rb | 4 ++-- spec/internal/app/controllers/{ => blog}/posts_controller.rb | 2 +- spec/internal/app/views/{ => blog}/posts/_form.html.erb | 0 spec/internal/app/views/blog/posts/edit.html.erb | 3 +++ spec/internal/app/views/{ => blog}/posts/new.html.erb | 0 spec/internal/app/views/{ => blog}/posts/show.html.erb | 0 spec/internal/app/views/posts/edit.html.erb | 3 --- spec/internal/config/routes.rb | 4 +++- 12 files changed, 17 insertions(+), 11 deletions(-) rename spec/internal/app/controllers/{ => blog}/posts_controller.rb (90%) rename spec/internal/app/views/{ => blog}/posts/_form.html.erb (100%) create mode 100644 spec/internal/app/views/blog/posts/edit.html.erb rename spec/internal/app/views/{ => blog}/posts/new.html.erb (100%) rename spec/internal/app/views/{ => blog}/posts/show.html.erb (100%) delete mode 100644 spec/internal/app/views/posts/edit.html.erb diff --git a/lib/sir_trevor_rails/blocks/tweet_block.rb b/lib/sir_trevor_rails/blocks/tweet_block.rb index e1439cf..1e2cafb 100644 --- a/lib/sir_trevor_rails/blocks/tweet_block.rb +++ b/lib/sir_trevor_rails/blocks/tweet_block.rb @@ -7,7 +7,7 @@ class TweetBlock < SirTrevorRails::Block include ActionView::Helpers::SanitizeHelper def render_tweet_body - sanitize Twitter::TwitterText::Autolink.auto_link( + sanitize Twitter::Autolink.auto_link( self.text, url_entities: (self.entities.values_at(:urls, :media).flatten.compact.uniq rescue nil) ), tags: %w{a span}, attributes: %w{class href rel target} diff --git a/lib/sir_trevor_rails/view_resolver.rb b/lib/sir_trevor_rails/view_resolver.rb index 78d41b2..4a05355 100644 --- a/lib/sir_trevor_rails/view_resolver.rb +++ b/lib/sir_trevor_rails/view_resolver.rb @@ -9,5 +9,9 @@ def find_templates(name, prefix, *args) super(name, prefix.gsub(/^(.)+(sir_trevor)/, '\2'), *args) end + def _find_all(name, prefix, *args) + super(name, prefix.gsub(/^(.)+(sir_trevor)/, '\2'), *args) + end + end end diff --git a/sir_trevor_rails.gemspec b/sir_trevor_rails.gemspec index fd9e9c8..655c67f 100644 --- a/sir_trevor_rails.gemspec +++ b/sir_trevor_rails.gemspec @@ -36,6 +36,6 @@ Gem::Specification.new do |spec| spec.add_dependency "rails", ">= 3", "< 8" spec.add_dependency "redcarpet", ">= 2.0.1", "< 4" - spec.add_dependency "twitter-text", ">= 2.0.1", "< 4" + spec.add_dependency "twitter-text", "~> 1.4" spec.add_dependency 'multi_json', '~> 1.0' end diff --git a/spec/integration/editing_spec.rb b/spec/integration/editing_spec.rb index a1950f1..c6e859f 100644 --- a/spec/integration/editing_spec.rb +++ b/spec/integration/editing_spec.rb @@ -5,14 +5,14 @@ class EditingSpec < ActionDispatch::IntegrationTest let(:post) { Post.create(body: blocks_json(:text_html)) } it 'serializes BlockArray to correct json' do - visit edit_post_path(post) + visit edit_blog_post_path(post) expect { find_field('Body').value == {data: post.body.as_json}.to_json } end it 'serializes empty BlockArray to empty array json' do post = Post.create() - visit edit_post_path(post) + visit edit_blog_post_path(post) expect { find_field('Body').value == "{\"data\":[]}" } end end diff --git a/spec/integration/rendering_spec.rb b/spec/integration/rendering_spec.rb index 70eeb09..f3ff3dc 100644 --- a/spec/integration/rendering_spec.rb +++ b/spec/integration/rendering_spec.rb @@ -4,7 +4,7 @@ class RenderingSpec < ActionDispatch::IntegrationTest describe 'SirTrevorContent rendering' do it 'renders all blocks as separate divs' do post = Post.create(body: blocks_json(:list_html, :text_html)) - visit post_path(post) + visit blog_post_path(post) expect { all('.st__content-block').length == 2 } end @@ -112,7 +112,7 @@ class RenderingSpec < ActionDispatch::IntegrationTest def create_and_visit(json) post = Post.create(body: json) - visit post_path(post) + visit blog_post_path(post) end def find_block(type) diff --git a/spec/internal/app/controllers/posts_controller.rb b/spec/internal/app/controllers/blog/posts_controller.rb similarity index 90% rename from spec/internal/app/controllers/posts_controller.rb rename to spec/internal/app/controllers/blog/posts_controller.rb index 0c678aa..1e913bb 100644 --- a/spec/internal/app/controllers/posts_controller.rb +++ b/spec/internal/app/controllers/blog/posts_controller.rb @@ -1,4 +1,4 @@ -class PostsController < ActionController::Base +class Blog::PostsController < ActionController::Base def new @post = Post.new end diff --git a/spec/internal/app/views/posts/_form.html.erb b/spec/internal/app/views/blog/posts/_form.html.erb similarity index 100% rename from spec/internal/app/views/posts/_form.html.erb rename to spec/internal/app/views/blog/posts/_form.html.erb diff --git a/spec/internal/app/views/blog/posts/edit.html.erb b/spec/internal/app/views/blog/posts/edit.html.erb new file mode 100644 index 0000000..45d28df --- /dev/null +++ b/spec/internal/app/views/blog/posts/edit.html.erb @@ -0,0 +1,3 @@ +<%= form_for @post, url: blog_posts_path do |form| %> + <%= render form %> +<% end %> diff --git a/spec/internal/app/views/posts/new.html.erb b/spec/internal/app/views/blog/posts/new.html.erb similarity index 100% rename from spec/internal/app/views/posts/new.html.erb rename to spec/internal/app/views/blog/posts/new.html.erb diff --git a/spec/internal/app/views/posts/show.html.erb b/spec/internal/app/views/blog/posts/show.html.erb similarity index 100% rename from spec/internal/app/views/posts/show.html.erb rename to spec/internal/app/views/blog/posts/show.html.erb diff --git a/spec/internal/app/views/posts/edit.html.erb b/spec/internal/app/views/posts/edit.html.erb deleted file mode 100644 index 94d733c..0000000 --- a/spec/internal/app/views/posts/edit.html.erb +++ /dev/null @@ -1,3 +0,0 @@ -<%= form_for @post do |form| %> - <%= render form %> -<% end %> diff --git a/spec/internal/config/routes.rb b/spec/internal/config/routes.rb index dd75c3c..48e1a79 100644 --- a/spec/internal/config/routes.rb +++ b/spec/internal/config/routes.rb @@ -1,3 +1,5 @@ Rails.application.routes.draw do - resources :posts + namespace :blog do + resources :posts + end end