capybara_js_helpers 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8bc34786537076641ff04d26ffd9d9a4a3e505a0
4
- data.tar.gz: dba47ef8834dcf9be148cd2ad80066b232dec36c
2
+ SHA256:
3
+ metadata.gz: 50a9ca273bda8487b65c96d98b06771123a13618b9b9b5a20fa046067e759eaf
4
+ data.tar.gz: e240cffb791d748a7ed879d152c26530987787ce634e90f7b11288af97f5cb52
5
5
  SHA512:
6
- metadata.gz: b4638074b566690cf0bd02e68c4db28600a9832236abc948f87144346759eaa63fbbdc1adc094416a9672eaceb3cdd8126722f0255274fa18298d6b124686c58
7
- data.tar.gz: c151e5e19cb9d82b9e0a8a6670140cf2fe7c5717fa55e983396180ad76417322767195b4663f4fb9cabac26c08413a10e212af296b10b2c3257c3c11f8b0f789
6
+ metadata.gz: 0edef30ead0f49190d19398d23a833d244959e65d7faf40d26bc5ffd4610ec8e28260e348e41331148a4da4f5d31b2f8bd160f3ed435ca0c3af50ce2fcc39411
7
+ data.tar.gz: 4980c46875905e7ad1c7429399874797e0892806d13e1da4ba071a1725fef155c19a5cded4c3587001f2471068a1e74ee2915fcf2dbabeb3aec9d1eb3109ffc7
@@ -1,3 +1,20 @@
1
1
  require 'capybara_js_helpers/selectize_helper.rb'
2
2
  require 'capybara_js_helpers/sweet_alert_helper.rb'
3
3
  require 'capybara_js_helpers/ck_editor_helper.rb'
4
+
5
+ module CapybaraJsHelpers
6
+ def self.execute_script(javascript, **variables)
7
+ definitions = []
8
+ arguments = []
9
+
10
+ variables.each_with_index do |(var, value), index|
11
+ definitions << "var #{var} = arguments[#{index}];"
12
+ arguments << value
13
+ end
14
+
15
+ Capybara.current_session.execute_script(
16
+ "#{definitions.join("\n")}\n#{javascript}",
17
+ *arguments
18
+ )
19
+ end
20
+ end
@@ -1,12 +1,11 @@
1
1
  module CapybaraJsHelpers
2
2
  module CkEditorHelper
3
- def ckeditor_fill_in(locator, opts)
4
- content = opts.fetch(:with).to_json
5
- page.execute_script <<-SCRIPT
6
- $(function() {
7
- CKEDITOR.instances['#{locator}'].setData('#{content}');
8
- $('textarea##{locator}').text('#{content}');
9
- });
3
+ def ckeditor_fill_in(locator, with:)
4
+ CapybaraJsHelpers.execute_script <<-SCRIPT, locator: locator, content: with
5
+ $(function() {
6
+ CKEDITOR.instances[locator].setData(content);
7
+ $('textarea#' + locator).text(content);
8
+ });
10
9
  SCRIPT
11
10
  end
12
11
  end
@@ -1,20 +1,35 @@
1
1
  module CapybaraJsHelpers
2
2
  module SelectizeHelper
3
3
  def selectize_add_item(selector, item_value)
4
- selectize_exec(selector, "addItem('#{item_value}')")
4
+ selectize_exec(
5
+ "addItem(item_value)",
6
+ selector: selector,
7
+ item_value: item_value
8
+ )
5
9
  end
6
10
 
7
11
  def selectize_remove_item(selector, item_value)
8
- selectize_exec(selector, "removeItem('#{item_value}')")
12
+ selectize_exec(
13
+ "removeItem(item_value)",
14
+ selector: selector,
15
+ item_value: item_value
16
+ )
9
17
  end
10
18
 
11
19
  def selectize_search(selector, search_term)
12
- selectize_exec(selector, "onSearchChange('#{search_term}')")
13
- selectize_exec(selector, "open()")
20
+ selectize_exec(
21
+ "onSearchChange(search_term)",
22
+ selector: selector,
23
+ search_term: search_term
24
+ )
25
+ selectize_exec("open()", selector: selector)
14
26
  end
15
27
 
16
- def selectize_exec(selector, command)
17
- page.execute_script("$('#{selector}')[0].selectize.#{command}")
28
+ def selectize_exec(command, **options)
29
+ CapybaraJsHelpers.execute_script(
30
+ "$(selector)[0].selectize.#{command}",
31
+ **options
32
+ )
18
33
  end
19
34
  end
20
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara_js_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Createk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-23 00:00:00.000000000 Z
11
+ date: 2020-08-04 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Capybara helpers for JS plug-ins
14
14
  email: contact@createk.io
@@ -39,8 +39,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  requirements: []
42
- rubyforge_project:
43
- rubygems_version: 2.5.1
42
+ rubygems_version: 3.1.2
44
43
  signing_key:
45
44
  specification_version: 4
46
45
  summary: Capybara JavaScript Helpers