1
1
defmodule Playwright.APIRequestContextTest do
2
2
use Playwright.TestCase , async: true
3
- alias Playwright.APIResponse
4
3
alias Playwright.APIRequest
4
+ alias Playwright.APIResponse
5
5
alias Playwright.APIRequestContext
6
6
7
7
describe "APIRequestContext.delete/3" do
8
8
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
9
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
10
- response = APIRequestContext . delete ( request , assets . prefix <> "/simple.json" )
9
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
10
+ response = APIRequestContext . delete ( context , assets . prefix <> "/simple.json" )
11
11
assert APIResponse . ok ( response )
12
12
end
13
13
end
14
14
15
15
describe "APIRequestContext.dispose/2" do
16
+ test "on success, invalidates subsequent use related `APIResponse`" , % { assets: assets , session: session } do
17
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
18
+ response = APIRequestContext . fetch ( context , assets . prefix <> "/simple.json" )
19
+
20
+ assert :ok = APIRequestContext . dispose ( context )
21
+ assert { :error , % { type: "TargetClosedError" } } = APIResponse . body ( response )
22
+ end
16
23
end
17
24
18
25
describe "APIRequestContext.fetch/3" do
19
26
test "on success, returns `APIResponse` for each HTTP method" , % { assets: assets , session: session } do
20
27
methods = [ :delete , :get , :head , :patch , :post , :put ]
21
28
22
29
Enum . map ( methods , fn method ->
23
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
24
- response = APIRequestContext . fetch ( request , assets . prefix <> "/simple.json" , % { method: method } )
30
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
31
+ response = APIRequestContext . fetch ( context , assets . prefix <> "/simple.json" , % { method: method } )
25
32
26
33
assert APIResponse . ok ( response )
27
34
assert APIResponse . header ( response , "x-playwright-request-method" ) == String . upcase ( Atom . to_string ( method ) )
@@ -42,40 +49,40 @@ defmodule Playwright.APIRequestContextTest do
42
49
43
50
describe "APIRequestContext.get/3" do
44
51
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
45
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
46
- response = APIRequestContext . get ( request , assets . prefix <> "/simple.json" )
52
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
53
+ response = APIRequestContext . get ( context , assets . prefix <> "/simple.json" )
47
54
assert APIResponse . ok ( response )
48
55
end
49
56
end
50
57
51
58
describe "APIRequestContext.head/3" do
52
59
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
53
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
54
- response = APIRequestContext . head ( request , assets . prefix <> "/simple.json" )
60
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
61
+ response = APIRequestContext . head ( context , assets . prefix <> "/simple.json" )
55
62
assert APIResponse . ok ( response )
56
63
end
57
64
end
58
65
59
66
describe "APIRequestContext.patch/3" do
60
67
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
61
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
62
- response = APIRequestContext . patch ( request , assets . prefix <> "/simple.json" )
68
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
69
+ response = APIRequestContext . patch ( context , assets . prefix <> "/simple.json" )
63
70
assert APIResponse . ok ( response )
64
71
end
65
72
end
66
73
67
74
describe "APIRequestContext.post/3" do
68
75
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
69
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
70
- response = APIRequestContext . post ( request , assets . prefix <> "/simple.json" )
76
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
77
+ response = APIRequestContext . post ( context , assets . prefix <> "/simple.json" )
71
78
assert APIResponse . ok ( response )
72
79
end
73
80
end
74
81
75
82
describe "APIRequestContext.put/3" do
76
83
test "on success, returns `APIResponse`" , % { assets: assets , session: session } do
77
- request = Playwright . request ( session ) |> APIRequest . new_context ( )
78
- response = APIRequestContext . put ( request , assets . prefix <> "/simple.json" )
84
+ context = Playwright . request ( session ) |> APIRequest . new_context ( )
85
+ response = APIRequestContext . put ( context , assets . prefix <> "/simple.json" )
79
86
assert APIResponse . ok ( response )
80
87
end
81
88
end
0 commit comments