File tree Expand file tree Collapse file tree 4 files changed +67
-6
lines changed
Expand file tree Collapse file tree 4 files changed +67
-6
lines changed Original file line number Diff line number Diff line change @@ -48,6 +48,7 @@ gem 'cuprite'
4848gem 'rspec_junit_formatter'
4949gem 'rspec-rails'
5050gem 'simplecov' , require : false
51+ gem 'super_diff'
5152
5253# Linters
5354gem 'fasterer'
Original file line number Diff line number Diff line change @@ -16,6 +16,11 @@ def content_element
1616 @content_element ||= find ( "#{ selector } .ql-editor" )
1717 end
1818
19+ def open_dropdown ( dropdown )
20+ find ( "#{ toolbar_selector } .ql-#{ dropdown } .ql-picker-label" ) . click
21+ self
22+ end
23+
1924 def toggle_bold
2025 find ( "#{ toolbar_selector } button.ql-bold" ) . click
2126 end
@@ -31,5 +36,29 @@ def toggle_underline
3136 def toggle_link
3237 find ( "#{ toolbar_selector } button.ql-link" ) . click
3338 end
39+
40+ def toggle_blockquote
41+ find ( "#{ toolbar_selector } button.ql-blockquote" ) . click
42+ end
43+
44+ def toggle_code_block
45+ find ( "#{ toolbar_selector } button.ql-code-block" ) . click
46+ end
47+
48+ def toggle_sub
49+ find ( "#{ toolbar_selector } button.ql-script[value='sub']" ) . click
50+ end
51+
52+ def toggle_super
53+ find ( "#{ toolbar_selector } button.ql-script[value='super']" ) . click
54+ end
55+
56+ def toggle_align_right
57+ find ( "#{ toolbar_selector } .ql-picker-item[data-value='right']" ) . click
58+ end
59+
60+ def tooltip_editing
61+ find ( "#{ editor_selector } .ql-tooltip.ql-editing" )
62+ end
3463 end
3564end
Original file line number Diff line number Diff line change 11# frozen_string_literal: true
22
3- require_relative 'spec_helper '
3+ require 'super_diff/rspec '
44
55require 'zeitwerk'
66loader = Zeitwerk ::Loader . new
77loader . push_dir ( "#{ __dir__ } /page_objects" )
88loader . setup
99
10+ require_relative 'spec_helper'
11+
1012ENV [ 'RAILS_ENV' ] = 'test'
1113
1214require 'simplecov'
2123
2224Dir [ File . expand_path ( 'support/**/*.rb' , __dir__ ) ] . each { |f | require_relative f }
2325
24- # Checks for pending migrations and applies them before tests are run.
25- # If you are not using ActiveRecord, you can remove these lines.
2626begin
2727 ActiveRecord ::Migration . maintain_test_schema!
2828rescue ActiveRecord ::PendingMigrationError => e
Original file line number Diff line number Diff line change 2929 end
3030
3131 it 'edits some content using the editor' do
32- editor << :return << 'More content'
32+ editor . select_all
33+ editor . toggle_link
34+ editor . tooltip_editing . send_keys ( [ "https://blocknot.es" , :return ] )
35+
36+ editor << :right << :return << 'More content'
3337 editor . toggle_bold
3438 editor << 'Some bold'
3539 editor . toggle_italic
3640 editor << 'Some italic'
3741 editor . toggle_underline
38- editor << 'Some underline'
42+ editor << 'Some underline' << :return
43+
44+ editor . toggle_blockquote
45+ editor << 'blockquote enabled' << :return
46+ editor . toggle_blockquote
47+
48+ editor . toggle_code_block
49+ editor << 'code block enabled' << :return
50+ editor . toggle_code_block
51+
52+ editor << "Some text"
53+ editor . toggle_sub
54+ editor << "sub text"
55+ editor . toggle_sub
56+ editor << " More text"
57+ editor . toggle_super
58+ editor << "sup text"
59+ editor . toggle_super
60+ editor << :return
61+
62+ editor . open_dropdown ( :align ) . toggle_align_right
63+ editor << "Text aligned on the right"
3964
4065 expect ( editor . content ) . to eq <<~HTML . clean_multiline
41- < p > Some content</ p >
66+ < p > < a href =" https://blocknot.es " rel =" noopener noreferrer " target =" _blank " > Some content</ a > </ p >
4267 < p > More content< strong > Some bold< em > Some italic< u > Some underline</ u > </ em > </ strong > </ p >
68+ < blockquote > blockquote enabled</ blockquote >
69+ < div class ="ql-code-block-container " spellcheck ="false ">
70+ < div class ="ql-code-block "> code block enabled</ div >
71+ </ div >
72+ < p > Some text< sub > sub text</ sub > More text< sup > sup text</ sup > </ p >
73+ < p class ="ql-align-right "> Text aligned on the right</ p >
4374 HTML
4475 end
4576
You can’t perform that action at this time.
0 commit comments