From 1436f17d20f06d5f1bacb9f15f4b558beb42804b Mon Sep 17 00:00:00 2001 From: Arnaud Levy <contact@arnaudlevy.com> Date: Mon, 25 Oct 2021 17:52:21 +0200 Subject: [PATCH] wip --- .../communication/website/imported/page.rb | 4 +-- .../communication/website/imported/post.rb | 4 +-- .../website/imported/medium_test.rb | 35 ------------------- .../communication/website/medium_test.rb | 31 ---------------- test/models/wordpress_test.rb | 25 +++++++------ 5 files changed, 19 insertions(+), 80 deletions(-) delete mode 100644 test/models/communication/website/imported/medium_test.rb delete mode 100644 test/models/communication/website/medium_test.rb diff --git a/app/models/communication/website/imported/page.rb b/app/models/communication/website/imported/page.rb index 595e88b64..2576b2471 100644 --- a/app/models/communication/website/imported/page.rb +++ b/app/models/communication/website/imported/page.rb @@ -84,9 +84,9 @@ class Communication::Website::Imported::Page < ApplicationRecord end puts "Update page #{page.id}" page.slug = slug - page.title = Wordpress.clean title.to_s + page.title = Wordpress.clean_string title.to_s page.description = ActionView::Base.full_sanitizer.sanitize excerpt.to_s - page.text = Wordpress.clean content.to_s + page.text = Wordpress.clean_html content.to_s page.published = true page.save end diff --git a/app/models/communication/website/imported/post.rb b/app/models/communication/website/imported/post.rb index 16a318248..7f7f8e591 100644 --- a/app/models/communication/website/imported/post.rb +++ b/app/models/communication/website/imported/post.rb @@ -82,11 +82,11 @@ class Communication::Website::Imported::Post < ApplicationRecord # return unless updated_at > post.updated_at end puts "Update post #{post.id}" - sanitized_title = Wordpress.clean self.title.to_s + sanitized_title = Wordpress.clean_string self.title.to_s post.title = sanitized_title unless sanitized_title.blank? # If there is no title, leave it with "Untitled" post.slug = slug post.description = ActionView::Base.full_sanitizer.sanitize excerpt.to_s - post.text = Wordpress.clean content.to_s + post.text = Wordpress.clean_html content.to_s post.created_at = created_at post.updated_at = updated_at post.published_at = published_at if published_at diff --git a/test/models/communication/website/imported/medium_test.rb b/test/models/communication/website/imported/medium_test.rb deleted file mode 100644 index e20280d2a..000000000 --- a/test/models/communication/website/imported/medium_test.rb +++ /dev/null @@ -1,35 +0,0 @@ -# == Schema Information -# -# Table name: communication_website_imported_media -# -# id :uuid not null, primary key -# data :jsonb -# file_url :text -# filename :string -# identifier :string -# mime_type :string -# created_at :datetime -# updated_at :datetime -# medium_id :uuid -# university_id :uuid not null -# website_id :uuid not null -# -# Indexes -# -# index_communication_website_imported_media_on_medium_id (medium_id) -# index_communication_website_imported_media_on_university_id (university_id) -# index_communication_website_imported_media_on_website_id (website_id) -# -# Foreign Keys -# -# fk_rails_... (medium_id => communication_website_media.id) -# fk_rails_... (university_id => universities.id) -# fk_rails_... (website_id => communication_website_imported_websites.id) -# -require "test_helper" - -class Communication::Website::Imported::MediumTest < ActiveSupport::TestCase - # test "the truth" do - # assert true - # end -end diff --git a/test/models/communication/website/medium_test.rb b/test/models/communication/website/medium_test.rb deleted file mode 100644 index 216a43e11..000000000 --- a/test/models/communication/website/medium_test.rb +++ /dev/null @@ -1,31 +0,0 @@ -# == Schema Information -# -# Table name: communication_website_media -# -# id :uuid not null, primary key -# file_url :text -# filename :string -# identifier :string -# mime_type :string -# created_at :datetime not null -# updated_at :datetime not null -# university_id :uuid not null -# website_id :uuid not null -# -# Indexes -# -# index_communication_website_media_on_university_id (university_id) -# index_communication_website_media_on_website_id (website_id) -# -# Foreign Keys -# -# fk_rails_... (university_id => universities.id) -# fk_rails_... (website_id => communication_websites.id) -# -require "test_helper" - -class Communication::Website::MediumTest < ActiveSupport::TestCase - # test "the truth" do - # assert true - # end -end diff --git a/test/models/wordpress_test.rb b/test/models/wordpress_test.rb index d7a4d946b..23b1323b6 100644 --- a/test/models/wordpress_test.rb +++ b/test/models/wordpress_test.rb @@ -3,58 +3,63 @@ require "test_helper" class WordpressTest < ActiveSupport::TestCase test "convert apostroph" do assert_equal 'Ouverture du CRM pendant les vacances d’Avril', - Wordpress.clean('Ouverture du CRM pendant les vacances d’Avril') + Wordpress.clean_html('Ouverture du CRM pendant les vacances d’Avril') end test "convert 3 dots" do assert_equal 'Le CRM fait le tri dans ses collections … et vous propose une vente de livres', - Wordpress.clean('Le CRM fait le tri dans ses collections … et vous propose une vente de livres') + Wordpress.clean_html('Le CRM fait le tri dans ses collections … et vous propose une vente de livres') end test "convert double quotation marks" do assert_equal 'Conférence Joëlle Zask : “Ecologie de la participationâ€', - Wordpress.clean('Conférence Joëlle Zask : “Ecologie de la participation”') + Wordpress.clean_html('Conférence Joëlle Zask : “Ecologie de la participation”') end test "convert h1" do assert_equal '<h2>B.U.T. Métiers du multimédia et de l’internet</h2>', - Wordpress.clean('<h1>B.U.T. Métiers du multimédia et de l’internet</h1>') + Wordpress.clean_html('<h1>B.U.T. Métiers du multimédia et de l’internet</h1>') end test "convert h2 without h1" do assert_equal '<h2>B.U.T. Métiers du multimédia et de l’internet</h2>', - Wordpress.clean('<h2>B.U.T. Métiers du multimédia et de l’internet</h2>') + Wordpress.clean_html('<h2>B.U.T. Métiers du multimédia et de l’internet</h2>') end test "convert h2 with h1" do assert_equal '<h2>Bachelor Universitaire de Technologie</h2><h3>B.U.T. Métiers du multimédia et de l’internet</h3>', - Wordpress.clean('<h1>Bachelor Universitaire de Technologie</h1><h2>B.U.T. Métiers du multimédia et de l’internet</h2>') + Wordpress.clean_html('<h1>Bachelor Universitaire de Technologie</h1><h2>B.U.T. Métiers du multimédia et de l’internet</h2>') end test "convert " do assert_equal 'TRAVAILLER DEMAIN, Débat – le 10 mai à 18h30', - Wordpress.clean('TRAVAILLER DEMAIN, Débat – le 10 mai à 18h30') + Wordpress.clean_html('TRAVAILLER DEMAIN, Débat – le 10 mai à 18h30') end test "remove classes" do assert_equal '<h2>→ Qu’est-ce que le B.U.T. ?</h2>', - Wordpress.clean('<h2 class="titre-diplome">→ Qu’est-ce que le B.U.T. ?</h2>') + Wordpress.clean_html('<h2 class="titre-diplome">→ Qu’est-ce que le B.U.T. ?</h2>') end test "remove line_separators (LSEP)" do # Invisible char before A, and html code assert_equal "Au ", - Wordpress.clean("
Au 
") + Wordpress.clean_html("
Au 
") end test "remove divs" do # Quid des images ? Comment gérer le transfert vers scaleway + active storage dans le code ? assert_equal '<figure><a href="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png"><img src="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png" alt="Le BUT, qu\'est-ce que c\'est ?" width="173" height="216" srcset="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png 240w, https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png 730w"></a></figure>', - Wordpress.clean('<div class="wp-block-group"><div class="wp-block-group__inner-container"><div class="wp-block-columns"><div class="wp-block-column"><div class="wp-block-image"><figure class="alignright size-medium is-resized"><a href="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png" rel="lightbox[14475]"><img src="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png" alt="Le BUT, qu\'est-ce que c\'est ?" class="wp-image-14821" width="173" height="216" srcset="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png 240w, https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png 730w"></a></figure></div></div>') + Wordpress.clean_html('<div class="wp-block-group"><div class="wp-block-group__inner-container"><div class="wp-block-columns"><div class="wp-block-column"><div class="wp-block-image"><figure class="alignright size-medium is-resized"><a href="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png" rel="lightbox[14475]"><img src="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png" alt="Le BUT, qu\'est-ce que c\'est ?" class="wp-image-14821" width="173" height="216" srcset="https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1-240x300.png 240w, https://www.iut.u-bordeaux-montaigne.fr/wp-content/uploads/2021/01/visuel_1.png 730w"></a></figure></div></div>') end + test "convert in titles" do + assert_equal ' ', + Wordpress.clean_string ' ' + end + test "authorize iframes" do end -- GitLab