Blame


1 fb1a36c0 2022-01-09 op include "lib.9ps"
2 fb1a36c0 2022-01-09 op
3 a0ec53a2 2022-01-09 op testing "open + clunk works" {
4 fb1a36c0 2022-01-09 op mount(0, "/")
5 fb1a36c0 2022-01-09 op walk(0, 1, "dir", "subdir", "file")
6 fb1a36c0 2022-01-09 op expect(Rwalk)
7 fb1a36c0 2022-01-09 op
8 fb1a36c0 2022-01-09 op open(1, OREAD)
9 fb1a36c0 2022-01-09 op m = recv()
10 fb1a36c0 2022-01-09 op assert m.type == Ropen
11 fb1a36c0 2022-01-09 op
12 fb1a36c0 2022-01-09 op clunk(1)
13 fb1a36c0 2022-01-09 op m = recv()
14 fb1a36c0 2022-01-09 op assert m.type == Rclunk
15 fb1a36c0 2022-01-09 op }
16 fb1a36c0 2022-01-09 op
17 a0ec53a2 2022-01-09 op testing "can open directories" {
18 fb1a36c0 2022-01-09 op mount(0, "/")
19 fb1a36c0 2022-01-09 op walk(0, 1, "dir", "subdir")
20 fb1a36c0 2022-01-09 op expect(Rwalk)
21 fb1a36c0 2022-01-09 op
22 fb1a36c0 2022-01-09 op open(1, OREAD)
23 fb1a36c0 2022-01-09 op m = recv()
24 fb1a36c0 2022-01-09 op assert m.type == Ropen
25 fb1a36c0 2022-01-09 op
26 fb1a36c0 2022-01-09 op clunk(1)
27 fb1a36c0 2022-01-09 op m = recv()
28 fb1a36c0 2022-01-09 op assert m.type == Rclunk
29 fb1a36c0 2022-01-09 op }
30 fb1a36c0 2022-01-09 op
31 a0ec53a2 2022-01-09 op testing "can't open directories for writing" {
32 fb1a36c0 2022-01-09 op mount(0, "/")
33 fb1a36c0 2022-01-09 op walk(0, 1, "dir")
34 fb1a36c0 2022-01-09 op expect(Rwalk)
35 fb1a36c0 2022-01-09 op
36 fb1a36c0 2022-01-09 op open(1, OWRITE)
37 fb1a36c0 2022-01-09 op expect-error()
38 fb1a36c0 2022-01-09 op
39 fb1a36c0 2022-01-09 op open(1, ORDWR)
40 fb1a36c0 2022-01-09 op expect-error()
41 fb1a36c0 2022-01-09 op }