praline 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/praline.rb +52 -0
  2. metadata +45 -0
@@ -0,0 +1,52 @@
1
+ require 'selenium-webdriver'
2
+
3
+ module Praline
4
+ def self.browser
5
+ if @browser.nil?
6
+ @browser = Selenium::WebDriver.for(:firefox)
7
+ end
8
+
9
+ @browser
10
+ end
11
+
12
+ def self.kill_browser
13
+ if not @browser.nil?
14
+ @browser.quit
15
+ @browser = nil
16
+ end
17
+ end
18
+
19
+ def open(url)
20
+ Praline::browser.get(url)
21
+ end
22
+
23
+ def input(name, value)
24
+ Praline::browser.find_element(:name, name).send_keys(value)
25
+ end
26
+
27
+ def title
28
+ Praline::browser.title
29
+ end
30
+
31
+ def h1
32
+ Praline::browser.find_element(:xpath, "//h1")
33
+ end
34
+
35
+ def options(select_name)
36
+ select = Praline::browser.find_element(:name, select_name)
37
+ options = select.find_elements(:tag_name, 'option')
38
+ options.map {|option| option.text }
39
+ end
40
+
41
+ def follow(link_text)
42
+ Praline::browser.find_element(:link, link_text).click
43
+ end
44
+
45
+ def submit(form_name)
46
+ Praline::browser.find_element(:name, form_name).submit
47
+ end
48
+
49
+ def kill_browser
50
+ Praline::kill_browser
51
+ end
52
+ end
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: praline
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Antoine d'Otreppe
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-09-14 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description:
15
+ email: a.dotreppe@aspyct.org
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - lib/praline.rb
21
+ homepage: http://www.aspyct.org/praline
22
+ licenses: []
23
+ post_install_message:
24
+ rdoc_options: []
25
+ require_paths:
26
+ - lib
27
+ required_ruby_version: !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ none: false
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubyforge_project:
41
+ rubygems_version: 1.8.24
42
+ signing_key:
43
+ specification_version: 3
44
+ summary: Web functional testing utilities
45
+ test_files: []