Skip to content

Commit 6594c82

Browse files
committed
Add changelog entry, cleanup
1 parent d497e57 commit 6594c82

File tree

3 files changed

+19
-48
lines changed

3 files changed

+19
-48
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ a block with this page, after which the page is closed.
1919
- `Ferrum::JavaScriptError#stack_trace` attr_reader
2020
- Windows support
2121
- Show warning and accept dialog if no handler given
22+
- `Ferrum::Cookies#set` ability to set cookie using `Ferrum::Cookies::Cookie` object
2223

2324
### Changed
2425

README.md

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -717,11 +717,11 @@ Returns cookie
717717
browser.cookies["NID"] # => <Ferrum::Cookies::Cookie:0x0000558624b67a88 @attributes={"name"=>"NID", "value"=>"...", "domain"=>".google.com", "path"=>"/", "expires"=>1583211046.575681, "size"=>178, "httpOnly"=>true, "secure"=>false, "session"=>false}>
718718
```
719719

720-
#### set(\*\*options) : `Boolean`
720+
#### set(value) : `Boolean`
721721

722-
Sets given values as cookie
722+
Sets a cookie
723723

724-
* options `Hash`
724+
* value `Hash`
725725
* :name `String`
726726
* :value `String`
727727
* :domain `String`
@@ -733,15 +733,10 @@ Sets given values as cookie
733733
browser.cookies.set(name: "stealth", value: "omg", domain: "google.com") # => true
734734
```
735735

736-
#### set(cookie) : `Boolean`
737-
738-
Sets given cookie
739-
740-
* cookie `Cookie`
736+
* value `Cookie`
741737

742738
```ruby
743739
nid_cookie = browser.cookies["NID"] # => <Ferrum::Cookies::Cookie:0x0000558624b67a88>
744-
745740
browser.cookies.set(nid_cookie) # => true
746741
```
747742

spec/cookies_spec.rb

Lines changed: 14 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
module Ferrum
44
describe Browser do
55
context "cookies support" do
6-
it "returns set cookies" do
6+
it "returns cookies" do
77
browser.go_to("/set_cookie")
88

99
cookie = browser.cookies["stealth"]
@@ -18,13 +18,13 @@ module Ferrum
1818
expect(cookie.expires).to be_nil
1919
end
2020

21-
it "can set cookies" do
21+
it "sets cookies" do
2222
browser.cookies.set(name: "stealth", value: "omg")
2323
browser.go_to("/get_cookie")
2424
expect(browser.body).to include("omg")
2525
end
2626

27-
it "can set cookies with custom settings" do
27+
it "sets cookies with custom settings" do
2828
browser.cookies.set(
2929
name: "stealth",
3030
value: "omg",
@@ -44,7 +44,7 @@ module Ferrum
4444
expect(browser.cookies["stealth"].samesite).to eq("Strict")
4545
end
4646

47-
it "can remove a cookie" do
47+
it "removes a cookie" do
4848
browser.go_to("/set_cookie")
4949

5050
browser.go_to("/get_cookie")
@@ -56,111 +56,86 @@ module Ferrum
5656
expect(browser.body).to_not include("test_cookie")
5757
end
5858

59-
it "can set a retrieved cookie" do
59+
it "sets a retrieved cookie" do
6060
browser.cookies.set(name: "stealth", value: "omg")
61-
6261
browser.go_to("/get_cookie")
63-
6462
expect(browser.body).to include("omg")
6563

66-
cookie = browser.cookies.all.values.first
67-
64+
cookie = browser.cookies["stealth"]
6865
browser.cookies.clear
69-
7066
browser.go_to("/get_cookie")
71-
7267
expect(browser.body).to_not include("omg")
7368

7469
browser.cookies.set(cookie)
75-
7670
browser.go_to("/get_cookie")
77-
7871
expect(browser.body).to include("omg")
7972
end
8073

81-
it "can set a retrieved browser cookie" do
74+
it "sets a retrieved browser cookie" do
8275
browser.go_to("/set_cookie")
83-
8476
cookie = browser.cookies["stealth"]
85-
77+
browser.go_to("/get_cookie")
8678
expect(cookie.name).to eq("stealth")
8779
expect(cookie.value).to eq("test_cookie")
88-
89-
browser.go_to("/get_cookie")
90-
9180
expect(browser.body).to include("test_cookie")
9281

9382
browser.cookies.clear
94-
9583
browser.go_to("/get_cookie")
96-
9784
expect(browser.body).not_to include("test_cookie")
9885

9986
browser.cookies.set(cookie)
100-
10187
browser.go_to("/get_cookie")
102-
10388
expect(browser.body).to include("test_cookie")
10489
end
10590

106-
it "it retains the characteristics of the reference cookie" do
91+
it "retains the characteristics of the reference cookie" do
10792
browser.cookies.set(name: "stealth", value: "omg", domain: "site.com")
108-
10993
expect(browser.cookies["stealth"].name).to eq("stealth")
11094
expect(browser.cookies["stealth"].value).to eq("omg")
11195
expect(browser.cookies["stealth"].domain).to eq("site.com")
11296

11397
cookie = browser.cookies["stealth"]
114-
11598
browser.cookies.clear
116-
11799
expect(browser.cookies["stealth"]).to eq(nil)
118-
119100
browser.cookies.set(cookie)
120101

121102
expect(browser.cookies["stealth"].name).to eq("stealth")
122103
expect(browser.cookies["stealth"].value).to eq("omg")
123104
expect(browser.cookies["stealth"].domain).to eq("site.com")
124105

125106
browser.cookies.clear
126-
127107
expect(browser.cookies["stealth"]).to eq(nil)
128-
129108
browser.cookies.set(cookie.attributes)
130109

131110
expect(browser.cookies["stealth"].name).to eq("stealth")
132111
expect(browser.cookies["stealth"].value).to eq("omg")
133112
expect(browser.cookies["stealth"].domain).to eq("site.com")
134113
end
135114

136-
it "it prevents side effects for params" do
115+
it "prevents side effects for params" do
137116
cookie_params = { name: "stealth", value: "test_cookie" }
138-
139117
original_cookie_params = cookie_params.dup
140118

141119
browser.cookies.set(cookie_params)
142120

143121
expect(cookie_params).to eq(original_cookie_params)
144122
end
145123

146-
it "it prevents side effects for cookie object" do
124+
it "prevents side effects for cookie object" do
147125
browser.cookies.set(name: "stealth", value: "omg")
148-
149126
cookie = browser.cookies["stealth"]
150-
151127
cookie.instance_variable_set(
152128
:@attributes,
153129
{ "name" => "stealth", "value" => "test_cookie", "domain" => "site.com" }
154130
)
155-
156131
original_attributes = cookie.attributes.dup
157132

158133
browser.cookies.set(cookie)
159134

160135
expect(cookie.attributes).to eq(original_attributes)
161136
end
162137

163-
it "can clear cookies" do
138+
it "clears cookies" do
164139
browser.go_to("/set_cookie")
165140

166141
browser.go_to("/get_cookie")
@@ -172,14 +147,14 @@ module Ferrum
172147
expect(browser.body).to_not include("test_cookie")
173148
end
174149

175-
it "can set cookies with an expires time" do
150+
it "sets cookies with an expires time" do
176151
time = Time.at(Time.now.to_i + 10_000)
177152
browser.go_to
178153
browser.cookies.set(name: "foo", value: "bar", expires: time)
179154
expect(browser.cookies["foo"].expires).to eq(time)
180155
end
181156

182-
it "can set cookies for given domain" do
157+
it "sets cookies for given domain" do
183158
port = server.port
184159
browser.cookies.set(name: "stealth", value: "127.0.0.1")
185160
browser.cookies.set(name: "stealth", value: "localhost", domain: "localhost")

0 commit comments

Comments
 (0)