@@ -24,76 +24,23 @@ module Selenium
2424 module WebDriver
2525 class BiDi
2626 describe Cookies do
27- it 'returns the cookies as json' do
28- cookies = described_class . new
29- cookies [ 'key4' ] = 'value4'
30- cookies [ 'session_id' ] = 'xyz123'
31-
32- formatted_cookies = cookies . as_json
33- expect ( formatted_cookies ) . to be_an ( Array )
34- expect ( formatted_cookies . first [ 'key4' ] ) . to eq ( 'value4' )
35- expect ( formatted_cookies . first [ 'session_id' ] ) . to eq ( 'xyz123' )
36- end
27+ let ( :cookies ) { described_class . new }
3728
38- it 'serializes the cookies needed for request' do
39- cookies =
40- described_class . new (
41- {
42- name : 'test' ,
43- value : 'value4' ,
44- domain : 'example.com' ,
45- path : '/path' ,
46- size : 1234 ,
47- httpOnly : true ,
48- secure : true ,
49- sameSite : 'Strict' ,
50- expiry : 1234
51- }
52- )
29+ it 'returns cookies formatted as json' do
30+ cookies [ 'session_id' ] = 'xyz123'
31+ cookies [ 'user_pref' ] = 'dark_mode'
5332
5433 formatted_cookies = cookies . as_json
5534 expect ( formatted_cookies ) . to be_an ( Array )
56- expect ( formatted_cookies . size ) . to eq ( 1 )
57-
58- request_cookies = formatted_cookies . first
59- expect ( request_cookies [ :name ] ) . to eq ( 'test' )
60- expect ( request_cookies [ :value ] [ :type ] ) . to eq ( 'string' )
61- expect ( request_cookies [ :value ] [ :value ] ) . to eq ( 'value4' )
62- expect ( request_cookies [ :domain ] ) . to eq ( 'example.com' )
63- expect ( request_cookies [ :path ] ) . to eq ( '/path' )
64- expect ( request_cookies [ :expiry ] ) . to eq ( 1234 )
65- expect ( request_cookies [ :httpOnly ] ) . to be ( true )
66- expect ( request_cookies [ :secure ] ) . to be ( true )
67- expect ( request_cookies [ :sameSite ] ) . to eq ( 'Strict' )
68- expect ( request_cookies [ :size ] ) . to eq ( 1234 )
69- end
35+ expect ( formatted_cookies . size ) . to eq ( 2 )
7036
71- it 'serializes the cookies needed for response' do
72- cookies = described_class . new ( {
73- name : 'test' ,
74- value : 'bar' ,
75- domain : 'localhost' ,
76- httpOnly : true ,
77- expiry : '1_000_000' ,
78- maxAge : 1_000 ,
79- path : '/' ,
80- sameSite : 'lax' ,
81- secure : false
82- } )
37+ session_cookie = formatted_cookies . find { |c | c [ :name ] == 'session_id' }
38+ expect ( session_cookie ) . not_to be_nil
39+ expect ( session_cookie [ :value ] ) . to eq ( { type : 'string' , value : 'xyz123' } )
8340
84- formatted_cookies = cookies . as_json
85- expect ( formatted_cookies ) . to be_an ( Array )
86- expect ( formatted_cookies . size ) . to eq ( 1 )
87- response_cookies = formatted_cookies . first
88- expect ( response_cookies [ :value ] [ :type ] ) . to eq ( 'string' )
89- expect ( response_cookies [ :value ] [ :value ] ) . to eq ( 'bar' )
90- expect ( response_cookies [ :domain ] ) . to eq ( 'localhost' )
91- expect ( response_cookies [ :path ] ) . to eq ( '/' )
92- expect ( response_cookies [ :expiry ] ) . to eq ( '1_000_000' )
93- expect ( response_cookies [ :httpOnly ] ) . to be ( true )
94- expect ( response_cookies [ :secure ] ) . to be ( false )
95- expect ( response_cookies [ :sameSite ] ) . to eq ( 'lax' )
96- expect ( response_cookies [ :maxAge ] ) . to eq ( 1_000 )
41+ pref_cookie = formatted_cookies . find { |c | c [ :name ] == 'user_pref' }
42+ expect ( pref_cookie ) . not_to be_nil
43+ expect ( pref_cookie [ :value ] ) . to eq ( { type : 'string' , value : 'dark_mode' } )
9744 end
9845 end
9946 end
0 commit comments