summaryrefslogtreecommitdiff
path: root/spec/support/select2_helper.rb
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-03-14 10:16:27 +0200
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-03-14 10:16:27 +0200
commitef05423f47fdd970498d880cf18f282fa0205596 (patch)
treee796066289a955ffa87863c8b6160f6cd83b5607 /spec/support/select2_helper.rb
parent10f14136f570863c2898f429c936de6c0114206a (diff)
downloadgitlab-ce-ef05423f47fdd970498d880cf18f282fa0205596.tar.gz
Finish select2-ajax for users. Added Select2Helper for tests
Diffstat (limited to 'spec/support/select2_helper.rb')
-rw-r--r--spec/support/select2_helper.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/support/select2_helper.rb b/spec/support/select2_helper.rb
new file mode 100644
index 00000000000..20dd9bf437c
--- /dev/null
+++ b/spec/support/select2_helper.rb
@@ -0,0 +1,25 @@
+# Select2 ajax programatic helper
+# It allows you to select value from select2
+#
+# Params
+# value - real value of selected item
+# opts - options containing css selector
+#
+# Usage:
+#
+# select2(2, from: '#user_ids')
+#
+
+module Select2Helper
+ def select2(value, options={})
+ raise "Must pass a hash containing 'from'" if not options.is_a?(Hash) or not options.has_key?(:from)
+
+ selector = options[:from]
+
+ if options[:multiple]
+ page.execute_script("$('#{selector}').select2('val', ['#{value}']);")
+ else
+ page.execute_script("$('#{selector}').select2('val', '#{value}');")
+ end
+ end
+end