Class: Async::Webdriver::Session
- Inherits:
-
Object
- Object
- Async::Webdriver::Session
- Defined in:
- lib/async/webdriver/session.rb
Instance Attribute Summary collapse
-
#execute ⇒ Object
readonly
Returns the value of attribute execute.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
Instance Method Summary collapse
- #back! ⇒ Object
- #delete! ⇒ Object
- #elements ⇒ Object
- #forward! ⇒ Object
-
#initialize(json:, connection:) ⇒ Session
constructor
A new instance of Session.
- #navigate!(url) ⇒ Object
- #refresh! ⇒ Object
- #source ⇒ Object
- #title ⇒ Object
- #url ⇒ Object
Constructor Details
#initialize(json:, connection:) ⇒ Session
Returns a new instance of Session.
4 5 6 7 8 9 10 |
# File 'lib/async/webdriver/session.rb', line 4 def initialize(json:, connection:) @capabilities = json.fetch "capabilities" @id = json.fetch "id" @session_connection = ConnectionPath.new "session/#{@id}", connection: connection @execute = Execute.new connection: @session_connection end |
Instance Attribute Details
#execute ⇒ Object (readonly)
Returns the value of attribute execute.
12 13 14 |
# File 'lib/async/webdriver/session.rb', line 12 def execute @execute end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12 13 14 |
# File 'lib/async/webdriver/session.rb', line 12 def id @id end |
Instance Method Details
#back! ⇒ Object
42 43 44 45 |
# File 'lib/async/webdriver/session.rb', line 42 def back! @session_connection.call method: "post", path: "back" self end |
#delete! ⇒ Object
29 30 31 |
# File 'lib/async/webdriver/session.rb', line 29 def delete! response = @session_connection.call method: "delete" end |
#elements ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/async/webdriver/session.rb', line 15 def elements body = { using: "css selector", value: "html" } session_id, value = @session_connection.call method: "post", path: "elements", body: body list = [] for e in value do list << Element.new(json: e, connection: @session_connection) end list end |
#forward! ⇒ Object
47 48 49 50 |
# File 'lib/async/webdriver/session.rb', line 47 def forward! @session_connection.call method: "post", path: "forward" self end |
#navigate!(url) ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/async/webdriver/session.rb', line 33 def navigate!(url) body = { url: url } @session_connection.call method: "post", path: "url", body: body self end |
#refresh! ⇒ Object
52 53 54 55 |
# File 'lib/async/webdriver/session.rb', line 52 def refresh! @session_connection.call method: "post", path: "refresh" self end |
#source ⇒ Object
65 66 67 |
# File 'lib/async/webdriver/session.rb', line 65 def source @session_connection.call method: "get", path: "source" end |
#title ⇒ Object
61 62 63 |
# File 'lib/async/webdriver/session.rb', line 61 def title @session_connection.call method: "get", path: "title" end |
#url ⇒ Object
57 58 59 |
# File 'lib/async/webdriver/session.rb', line 57 def url @session_connection.call method: "get", path: "url" end |