@livestore/common-cf 0.0.0-snapshot-dfbad33b758f4c1709d6e294083bfb190a8230b2 → 0.0.0-snapshot-392264be848c261bb65082bacfccb8818144da92
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/do-rpc/rpc.test.js +35 -31
- package/dist/do-rpc/rpc.test.js.map +1 -1
- package/dist/ws-rpc/ws-rpc.test.js +35 -31
- package/dist/ws-rpc/ws-rpc.test.js.map +1 -1
- package/package.json +4 -4
- package/src/do-rpc/rpc.test.ts +47 -52
- package/src/ws-rpc/ws-rpc.test.ts +52 -58
package/dist/do-rpc/rpc.test.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
import { Chunk, Effect, FetchHttpClient, Layer, Option, RpcClient, RpcSerialization, Stream, } from '@livestore/utils/effect';
|
|
2
|
-
import {
|
|
2
|
+
import { PlatformNode } from '@livestore/utils/node';
|
|
3
|
+
import { WranglerDevServerService } from '@livestore/utils-dev/node';
|
|
3
4
|
import { Vitest } from '@livestore/utils-dev/node-vitest';
|
|
4
|
-
import {
|
|
5
|
+
import { expect } from 'vitest';
|
|
5
6
|
import { TestRpcs } from "./test-fixtures/rpc-schema.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
const testTimeout = 60_000;
|
|
8
|
+
const withWranglerTest = Vitest.makeWithTestCtx({
|
|
9
|
+
timeout: testTimeout,
|
|
10
|
+
makeLayer: () => WranglerDevServerService.Default({
|
|
9
11
|
cwd: `${import.meta.dirname}/test-fixtures`,
|
|
10
|
-
})
|
|
11
|
-
port = wranglerPort;
|
|
12
|
+
}).pipe(Layer.provide(PlatformNode.NodeContext.layer)),
|
|
12
13
|
});
|
|
13
|
-
const ProtocolLive = Layer.suspend(() =>
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const ProtocolLive = Layer.suspend(() => Effect.gen(function* () {
|
|
15
|
+
const server = yield* WranglerDevServerService;
|
|
16
|
+
return RpcClient.layerProtocolHttp({
|
|
17
|
+
url: `${server.url}/rpc`,
|
|
18
|
+
}).pipe(Layer.provide([FetchHttpClient.layer, RpcSerialization.layerJson]));
|
|
19
|
+
}).pipe(Layer.unwrapEffect));
|
|
16
20
|
/**
|
|
17
21
|
* Test Architecture - Effect RPC via HTTP
|
|
18
22
|
*
|
|
@@ -30,24 +34,24 @@ const ProtocolLive = Layer.suspend(() => RpcClient.layerProtocolHttp({
|
|
|
30
34
|
*
|
|
31
35
|
* Test Path: Test → Worker /rpc → Server DO (HTTP RPC)
|
|
32
36
|
*/
|
|
33
|
-
Vitest.describe('Durable Object RPC', { timeout:
|
|
37
|
+
Vitest.describe('Durable Object RPC', { timeout: testTimeout }, () => {
|
|
34
38
|
// Direct HTTP RPC client tests
|
|
35
|
-
Vitest.scopedLive('should call ping method', Effect.
|
|
39
|
+
Vitest.scopedLive('should call ping method', (test) => Effect.gen(function* () {
|
|
36
40
|
const client = yield* RpcClient.make(TestRpcs);
|
|
37
41
|
const result = yield* client.Ping({ message: 'Hello HTTP RPC' });
|
|
38
42
|
expect(result).toEqual({ response: 'Pong: Hello HTTP RPC' });
|
|
39
|
-
}
|
|
40
|
-
Vitest.scopedLive('should call echo method', Effect.
|
|
43
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
44
|
+
Vitest.scopedLive('should call echo method', (test) => Effect.gen(function* () {
|
|
41
45
|
const client = yield* RpcClient.make(TestRpcs);
|
|
42
46
|
const result = yield* client.Echo({ text: 'Echo' });
|
|
43
47
|
expect(result).toEqual({ echo: 'Echo: Echo' });
|
|
44
|
-
}
|
|
45
|
-
Vitest.scopedLive('should call add method', Effect.
|
|
48
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
49
|
+
Vitest.scopedLive('should call add method', (test) => Effect.gen(function* () {
|
|
46
50
|
const client = yield* RpcClient.make(TestRpcs);
|
|
47
51
|
const result = yield* client.Add({ a: 15, b: 25 });
|
|
48
52
|
expect(result).toEqual({ result: 40 });
|
|
49
|
-
}
|
|
50
|
-
Vitest.scopedLive('should handle RPC fail method', Effect.
|
|
53
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
54
|
+
Vitest.scopedLive('should handle RPC fail method', (test) => Effect.gen(function* () {
|
|
51
55
|
const client = yield* RpcClient.make(TestRpcs);
|
|
52
56
|
const error = yield* client.Fail({ message: 'test http failure' }).pipe(Effect.exit);
|
|
53
57
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -61,8 +65,8 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
61
65
|
}
|
|
62
66
|
}"
|
|
63
67
|
`);
|
|
64
|
-
}
|
|
65
|
-
Vitest.scopedLive('should handle defect method', Effect.
|
|
68
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
69
|
+
Vitest.scopedLive('should handle defect method', (test) => Effect.gen(function* () {
|
|
66
70
|
const client = yield* RpcClient.make(TestRpcs);
|
|
67
71
|
const error = yield* client.Defect({ message: 'test http defect' }).pipe(Effect.exit);
|
|
68
72
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -76,14 +80,14 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
76
80
|
}
|
|
77
81
|
}"
|
|
78
82
|
`);
|
|
79
|
-
}
|
|
80
|
-
Vitest.scopedLive('should handle streaming RPC via HTTP', Effect.
|
|
83
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
84
|
+
Vitest.scopedLive('should handle streaming RPC via HTTP', (test) => Effect.gen(function* () {
|
|
81
85
|
const client = yield* RpcClient.make(TestRpcs);
|
|
82
86
|
const stream = client.Stream({}).pipe(Stream.take(4), Stream.map((c) => c.maybeNumber.pipe(Option.getOrUndefined)));
|
|
83
87
|
const chunks = yield* Stream.runCollect(stream);
|
|
84
88
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 4, 9, 16]); // squares of 1,2,3,4
|
|
85
|
-
}
|
|
86
|
-
Vitest.scopedLive('should handle streaming RPC with error via HTTP', Effect.
|
|
89
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
90
|
+
Vitest.scopedLive('should handle streaming RPC with error via HTTP', (test) => Effect.gen(function* () {
|
|
87
91
|
const client = yield* RpcClient.make(TestRpcs);
|
|
88
92
|
const stream = client.StreamError({ count: 5, errorAfter: 4 });
|
|
89
93
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit);
|
|
@@ -98,8 +102,8 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
98
102
|
}
|
|
99
103
|
}"
|
|
100
104
|
`);
|
|
101
|
-
}
|
|
102
|
-
Vitest.scopedLive('should handle streaming RPC with defect via HTTP', Effect.
|
|
105
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
106
|
+
Vitest.scopedLive('should handle streaming RPC with defect via HTTP', (test) => Effect.gen(function* () {
|
|
103
107
|
const client = yield* RpcClient.make(TestRpcs);
|
|
104
108
|
const stream = client.StreamDefect({ count: 4, defectAfter: 1 });
|
|
105
109
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit);
|
|
@@ -114,15 +118,15 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
114
118
|
}
|
|
115
119
|
}"
|
|
116
120
|
`);
|
|
117
|
-
}
|
|
118
|
-
Vitest.scopedLive('should handle stream interruption via HTTP', Effect.
|
|
121
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
122
|
+
Vitest.scopedLive('should handle stream interruption via HTTP', (test) => Effect.gen(function* () {
|
|
119
123
|
const client = yield* RpcClient.make(TestRpcs);
|
|
120
124
|
const stream = client.StreamInterruptible({ delay: 50, interruptAfterCount: 3 }).pipe(Stream.take(3));
|
|
121
125
|
const chunks = yield* Stream.runCollect(stream);
|
|
122
126
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 2, 3]);
|
|
123
|
-
}
|
|
127
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
124
128
|
// TODO @IMax153
|
|
125
|
-
Vitest.scopedLive.skip('should handle streaming RPC bug scenario', Effect.
|
|
129
|
+
Vitest.scopedLive.skip('should handle streaming RPC bug scenario', (test) => Effect.gen(function* () {
|
|
126
130
|
const client = yield* RpcClient.make(TestRpcs);
|
|
127
131
|
yield* client.StreamBugScenarioDoClient({});
|
|
128
132
|
/*
|
|
@@ -173,6 +177,6 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
173
177
|
```
|
|
174
178
|
|
|
175
179
|
*/
|
|
176
|
-
}
|
|
180
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
177
181
|
});
|
|
178
182
|
//# sourceMappingURL=rpc.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.test.js","sourceRoot":"","sources":["../../src/do-rpc/rpc.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,MAAM,EACN,eAAe,EACf,KAAK,EACL,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,MAAM,GACP,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"rpc.test.js","sourceRoot":"","sources":["../../src/do-rpc/rpc.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,34 +1,38 @@
|
|
|
1
1
|
import { Chunk, Effect, Layer, Option, RpcClient, RpcSerialization, Socket, Stream } from '@livestore/utils/effect';
|
|
2
|
-
import {
|
|
2
|
+
import { PlatformNode } from '@livestore/utils/node';
|
|
3
|
+
import { WranglerDevServerService } from '@livestore/utils-dev/node';
|
|
3
4
|
import { Vitest } from '@livestore/utils-dev/node-vitest';
|
|
4
|
-
import {
|
|
5
|
+
import { expect } from 'vitest';
|
|
5
6
|
import { TestRpcs } from "./test-fixtures/rpc-schema.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
const testTimeout = 60_000;
|
|
8
|
+
const withWranglerTest = Vitest.makeWithTestCtx({
|
|
9
|
+
timeout: testTimeout,
|
|
10
|
+
makeLayer: () => WranglerDevServerService.Default({
|
|
9
11
|
cwd: `${import.meta.dirname}/test-fixtures`,
|
|
10
|
-
})
|
|
11
|
-
port = wranglerPort;
|
|
12
|
+
}).pipe(Layer.provide(PlatformNode.NodeContext.layer)),
|
|
12
13
|
});
|
|
13
|
-
const ProtocolLive = Layer.suspend(() =>
|
|
14
|
-
|
|
14
|
+
const ProtocolLive = Layer.suspend(() => Effect.gen(function* () {
|
|
15
|
+
const server = yield* WranglerDevServerService;
|
|
16
|
+
return RpcClient.layerProtocolSocket().pipe(Layer.provide(Socket.layerWebSocket(`ws://localhost:${server.port}`)), Layer.provide(Socket.layerWebSocketConstructorGlobal), Layer.provide(RpcSerialization.layerJson));
|
|
17
|
+
}).pipe(Layer.unwrapEffect));
|
|
18
|
+
Vitest.describe('Durable Object WebSocket RPC', { timeout: testTimeout }, () => {
|
|
15
19
|
// Direct HTTP RPC client tests
|
|
16
|
-
Vitest.scopedLive('should call ping method', Effect.
|
|
20
|
+
Vitest.scopedLive('should call ping method', (test) => Effect.gen(function* () {
|
|
17
21
|
const client = yield* RpcClient.make(TestRpcs);
|
|
18
22
|
const result = yield* client.Ping({ message: 'Hello HTTP RPC' });
|
|
19
23
|
expect(result).toEqual({ response: 'Pong: Hello HTTP RPC' });
|
|
20
|
-
}
|
|
21
|
-
Vitest.scopedLive('should call echo method', Effect.
|
|
24
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
25
|
+
Vitest.scopedLive('should call echo method', (test) => Effect.gen(function* () {
|
|
22
26
|
const client = yield* RpcClient.make(TestRpcs);
|
|
23
27
|
const result = yield* client.Echo({ text: 'Echo' });
|
|
24
28
|
expect(result).toEqual({ echo: 'Echo: Echo' });
|
|
25
|
-
}
|
|
26
|
-
Vitest.scopedLive('should call add method', Effect.
|
|
29
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
30
|
+
Vitest.scopedLive('should call add method', (test) => Effect.gen(function* () {
|
|
27
31
|
const client = yield* RpcClient.make(TestRpcs);
|
|
28
32
|
const result = yield* client.Add({ a: 15, b: 25 });
|
|
29
33
|
expect(result).toEqual({ result: 40 });
|
|
30
|
-
}
|
|
31
|
-
Vitest.scopedLive('should handle RPC fail method', Effect.
|
|
34
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
35
|
+
Vitest.scopedLive('should handle RPC fail method', (test) => Effect.gen(function* () {
|
|
32
36
|
const client = yield* RpcClient.make(TestRpcs);
|
|
33
37
|
const error = yield* client.Fail({ message: 'test http failure' }).pipe(Effect.exit);
|
|
34
38
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -42,8 +46,8 @@ Vitest.describe('Durable Object WebSocket RPC', { timeout: 5000 }, () => {
|
|
|
42
46
|
}
|
|
43
47
|
}"
|
|
44
48
|
`);
|
|
45
|
-
}
|
|
46
|
-
Vitest.scopedLive('should handle defect method', Effect.
|
|
49
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
50
|
+
Vitest.scopedLive('should handle defect method', (test) => Effect.gen(function* () {
|
|
47
51
|
const client = yield* RpcClient.make(TestRpcs);
|
|
48
52
|
const error = yield* client.Defect({ message: 'test http defect' }).pipe(Effect.exit);
|
|
49
53
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -57,14 +61,14 @@ Vitest.describe('Durable Object WebSocket RPC', { timeout: 5000 }, () => {
|
|
|
57
61
|
}
|
|
58
62
|
}"
|
|
59
63
|
`);
|
|
60
|
-
}
|
|
61
|
-
Vitest.scopedLive('should handle streaming RPC via HTTP', Effect.
|
|
64
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
65
|
+
Vitest.scopedLive('should handle streaming RPC via HTTP', (test) => Effect.gen(function* () {
|
|
62
66
|
const client = yield* RpcClient.make(TestRpcs);
|
|
63
67
|
const stream = client.Stream({}).pipe(Stream.take(4), Stream.map((c) => c.maybeNumber.pipe(Option.getOrUndefined)));
|
|
64
68
|
const chunks = yield* Stream.runCollect(stream);
|
|
65
69
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 4, 9, 16]); // squares of 1,2,3,4
|
|
66
|
-
}
|
|
67
|
-
Vitest.scopedLive('should handle streaming RPC with error via HTTP', Effect.
|
|
70
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
71
|
+
Vitest.scopedLive('should handle streaming RPC with error via HTTP', (test) => Effect.gen(function* () {
|
|
68
72
|
const client = yield* RpcClient.make(TestRpcs);
|
|
69
73
|
const stream = client.StreamError({ count: 5, errorAfter: 4 });
|
|
70
74
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit);
|
|
@@ -79,8 +83,8 @@ Vitest.describe('Durable Object WebSocket RPC', { timeout: 5000 }, () => {
|
|
|
79
83
|
}
|
|
80
84
|
}"
|
|
81
85
|
`);
|
|
82
|
-
}
|
|
83
|
-
Vitest.scopedLive('should handle streaming RPC with defect via HTTP', Effect.
|
|
86
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
87
|
+
Vitest.scopedLive('should handle streaming RPC with defect via HTTP', (test) => Effect.gen(function* () {
|
|
84
88
|
const client = yield* RpcClient.make(TestRpcs);
|
|
85
89
|
const stream = client.StreamDefect({ count: 4, defectAfter: 1 });
|
|
86
90
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit);
|
|
@@ -95,16 +99,16 @@ Vitest.describe('Durable Object WebSocket RPC', { timeout: 5000 }, () => {
|
|
|
95
99
|
}
|
|
96
100
|
}"
|
|
97
101
|
`);
|
|
98
|
-
}
|
|
99
|
-
Vitest.scopedLive('should handle stream interruption via HTTP', Effect.
|
|
102
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
103
|
+
Vitest.scopedLive('should handle stream interruption via HTTP', (test) => Effect.gen(function* () {
|
|
100
104
|
const client = yield* RpcClient.make(TestRpcs);
|
|
101
105
|
const stream = client.StreamInterruptible({ delay: 50, interruptAfterCount: 3 }).pipe(Stream.take(3));
|
|
102
106
|
const chunks = yield* Stream.runCollect(stream);
|
|
103
107
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 2, 3]);
|
|
104
|
-
}
|
|
108
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
105
109
|
});
|
|
106
110
|
Vitest.describe('Hibernation Tests', { timeout: 25000 }, () => {
|
|
107
|
-
Vitest.scopedLive('should maintain RPC functionality after hibernation', Effect.
|
|
111
|
+
Vitest.scopedLive('should maintain RPC functionality after hibernation', (test) => Effect.gen(function* () {
|
|
108
112
|
console.log('🧪 Testing RPC server persistence across hibernation...');
|
|
109
113
|
// Step 1: Create client and test initial functionality
|
|
110
114
|
console.log('Step 1: Establishing initial connection and testing RPC methods...');
|
|
@@ -149,8 +153,8 @@ Vitest.describe('Hibernation Tests', { timeout: 25000 }, () => {
|
|
|
149
153
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 4, 9]); // squares of 1,2,3
|
|
150
154
|
console.log('✅ Streaming after hibernation successful');
|
|
151
155
|
console.log('🎉 All RPC operations successful after hibernation!');
|
|
152
|
-
}
|
|
153
|
-
Vitest.scopedLive('should handle rapid operations after hibernation', Effect.
|
|
156
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
157
|
+
Vitest.scopedLive('should handle rapid operations after hibernation', (test) => Effect.gen(function* () {
|
|
154
158
|
console.log('🧪 Testing rapid operations after hibernation...');
|
|
155
159
|
console.log('Step 1: Establishing initial connection...');
|
|
156
160
|
const client = yield* RpcClient.make(TestRpcs);
|
|
@@ -184,6 +188,6 @@ Vitest.describe('Hibernation Tests', { timeout: 25000 }, () => {
|
|
|
184
188
|
});
|
|
185
189
|
console.log('✅ All rapid operations successful:', results.map((r) => r.operation));
|
|
186
190
|
console.log('🎉 Rapid operations work correctly after hibernation!');
|
|
187
|
-
}
|
|
191
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)));
|
|
188
192
|
});
|
|
189
193
|
//# sourceMappingURL=ws-rpc.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-rpc.test.js","sourceRoot":"","sources":["../../src/ws-rpc/ws-rpc.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ws-rpc.test.js","sourceRoot":"","sources":["../../src/ws-rpc/ws-rpc.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/common-cf",
|
|
3
|
-
"version": "0.0.0-snapshot-
|
|
3
|
+
"version": "0.0.0-snapshot-392264be848c261bb65082bacfccb8818144da92",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"exports": {
|
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@cloudflare/workers-types": "4.20250823.0",
|
|
12
|
-
"@livestore/common": "0.0.0-snapshot-
|
|
13
|
-
"@livestore/utils": "0.0.0-snapshot-
|
|
12
|
+
"@livestore/common": "0.0.0-snapshot-392264be848c261bb65082bacfccb8818144da92",
|
|
13
|
+
"@livestore/utils": "0.0.0-snapshot-392264be848c261bb65082bacfccb8818144da92"
|
|
14
14
|
},
|
|
15
15
|
"devDependencies": {
|
|
16
16
|
"vitest": "3.2.4",
|
|
17
17
|
"wrangler": "^4.32.0",
|
|
18
|
-
"@livestore/utils-dev": "0.0.0-snapshot-
|
|
18
|
+
"@livestore/utils-dev": "0.0.0-snapshot-392264be848c261bb65082bacfccb8818144da92"
|
|
19
19
|
},
|
|
20
20
|
"files": [
|
|
21
21
|
"dist",
|
package/src/do-rpc/rpc.test.ts
CHANGED
|
@@ -8,24 +8,29 @@ import {
|
|
|
8
8
|
RpcSerialization,
|
|
9
9
|
Stream,
|
|
10
10
|
} from '@livestore/utils/effect'
|
|
11
|
-
import {
|
|
11
|
+
import { PlatformNode } from '@livestore/utils/node'
|
|
12
|
+
import { WranglerDevServerService } from '@livestore/utils-dev/node'
|
|
12
13
|
import { Vitest } from '@livestore/utils-dev/node-vitest'
|
|
13
|
-
import {
|
|
14
|
+
import { expect } from 'vitest'
|
|
14
15
|
import { TestRpcs } from './test-fixtures/rpc-schema.ts'
|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
const testTimeout = 60_000
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
const withWranglerTest = Vitest.makeWithTestCtx({
|
|
20
|
+
timeout: testTimeout,
|
|
21
|
+
makeLayer: () =>
|
|
22
|
+
WranglerDevServerService.Default({
|
|
23
|
+
cwd: `${import.meta.dirname}/test-fixtures`,
|
|
24
|
+
}).pipe(Layer.provide(PlatformNode.NodeContext.layer)),
|
|
23
25
|
})
|
|
24
26
|
|
|
25
27
|
const ProtocolLive = Layer.suspend(() =>
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
Effect.gen(function* () {
|
|
29
|
+
const server = yield* WranglerDevServerService
|
|
30
|
+
return RpcClient.layerProtocolHttp({
|
|
31
|
+
url: `${server.url}/rpc`,
|
|
32
|
+
}).pipe(Layer.provide([FetchHttpClient.layer, RpcSerialization.layerJson]))
|
|
33
|
+
}).pipe(Layer.unwrapEffect),
|
|
29
34
|
)
|
|
30
35
|
|
|
31
36
|
/**
|
|
@@ -46,38 +51,34 @@ const ProtocolLive = Layer.suspend(() =>
|
|
|
46
51
|
* Test Path: Test → Worker /rpc → Server DO (HTTP RPC)
|
|
47
52
|
*/
|
|
48
53
|
|
|
49
|
-
Vitest.describe('Durable Object RPC', { timeout:
|
|
54
|
+
Vitest.describe('Durable Object RPC', { timeout: testTimeout }, () => {
|
|
50
55
|
// Direct HTTP RPC client tests
|
|
51
|
-
Vitest.scopedLive(
|
|
52
|
-
|
|
53
|
-
Effect.fn(function* () {
|
|
56
|
+
Vitest.scopedLive('should call ping method', (test) =>
|
|
57
|
+
Effect.gen(function* () {
|
|
54
58
|
const client = yield* RpcClient.make(TestRpcs)
|
|
55
59
|
const result = yield* client.Ping({ message: 'Hello HTTP RPC' })
|
|
56
60
|
expect(result).toEqual({ response: 'Pong: Hello HTTP RPC' })
|
|
57
|
-
}
|
|
61
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
58
62
|
)
|
|
59
63
|
|
|
60
|
-
Vitest.scopedLive(
|
|
61
|
-
|
|
62
|
-
Effect.fn(function* () {
|
|
64
|
+
Vitest.scopedLive('should call echo method', (test) =>
|
|
65
|
+
Effect.gen(function* () {
|
|
63
66
|
const client = yield* RpcClient.make(TestRpcs)
|
|
64
67
|
const result = yield* client.Echo({ text: 'Echo' })
|
|
65
68
|
expect(result).toEqual({ echo: 'Echo: Echo' })
|
|
66
|
-
}
|
|
69
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
67
70
|
)
|
|
68
71
|
|
|
69
|
-
Vitest.scopedLive(
|
|
70
|
-
|
|
71
|
-
Effect.fn(function* () {
|
|
72
|
+
Vitest.scopedLive('should call add method', (test) =>
|
|
73
|
+
Effect.gen(function* () {
|
|
72
74
|
const client = yield* RpcClient.make(TestRpcs)
|
|
73
75
|
const result = yield* client.Add({ a: 15, b: 25 })
|
|
74
76
|
expect(result).toEqual({ result: 40 })
|
|
75
|
-
}
|
|
77
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
76
78
|
)
|
|
77
79
|
|
|
78
|
-
Vitest.scopedLive(
|
|
79
|
-
|
|
80
|
-
Effect.fn(function* () {
|
|
80
|
+
Vitest.scopedLive('should handle RPC fail method', (test) =>
|
|
81
|
+
Effect.gen(function* () {
|
|
81
82
|
const client = yield* RpcClient.make(TestRpcs)
|
|
82
83
|
const error = yield* client.Fail({ message: 'test http failure' }).pipe(Effect.exit)
|
|
83
84
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -91,12 +92,11 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
91
92
|
}
|
|
92
93
|
}"
|
|
93
94
|
`)
|
|
94
|
-
}
|
|
95
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
95
96
|
)
|
|
96
97
|
|
|
97
|
-
Vitest.scopedLive(
|
|
98
|
-
|
|
99
|
-
Effect.fn(function* () {
|
|
98
|
+
Vitest.scopedLive('should handle defect method', (test) =>
|
|
99
|
+
Effect.gen(function* () {
|
|
100
100
|
const client = yield* RpcClient.make(TestRpcs)
|
|
101
101
|
const error = yield* client.Defect({ message: 'test http defect' }).pipe(Effect.exit)
|
|
102
102
|
expect(error.toString()).toMatchInlineSnapshot(`
|
|
@@ -110,12 +110,11 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
110
110
|
}
|
|
111
111
|
}"
|
|
112
112
|
`)
|
|
113
|
-
}
|
|
113
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
114
114
|
)
|
|
115
115
|
|
|
116
|
-
Vitest.scopedLive(
|
|
117
|
-
|
|
118
|
-
Effect.fn(function* () {
|
|
116
|
+
Vitest.scopedLive('should handle streaming RPC via HTTP', (test) =>
|
|
117
|
+
Effect.gen(function* () {
|
|
119
118
|
const client = yield* RpcClient.make(TestRpcs)
|
|
120
119
|
const stream = client.Stream({}).pipe(
|
|
121
120
|
Stream.take(4),
|
|
@@ -123,12 +122,11 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
123
122
|
)
|
|
124
123
|
const chunks = yield* Stream.runCollect(stream)
|
|
125
124
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 4, 9, 16]) // squares of 1,2,3,4
|
|
126
|
-
}
|
|
125
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
127
126
|
)
|
|
128
127
|
|
|
129
|
-
Vitest.scopedLive(
|
|
130
|
-
|
|
131
|
-
Effect.fn(function* () {
|
|
128
|
+
Vitest.scopedLive('should handle streaming RPC with error via HTTP', (test) =>
|
|
129
|
+
Effect.gen(function* () {
|
|
132
130
|
const client = yield* RpcClient.make(TestRpcs)
|
|
133
131
|
const stream = client.StreamError({ count: 5, errorAfter: 4 })
|
|
134
132
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit)
|
|
@@ -143,12 +141,11 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
143
141
|
}
|
|
144
142
|
}"
|
|
145
143
|
`)
|
|
146
|
-
}
|
|
144
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
147
145
|
)
|
|
148
146
|
|
|
149
|
-
Vitest.scopedLive(
|
|
150
|
-
|
|
151
|
-
Effect.fn(function* () {
|
|
147
|
+
Vitest.scopedLive('should handle streaming RPC with defect via HTTP', (test) =>
|
|
148
|
+
Effect.gen(function* () {
|
|
152
149
|
const client = yield* RpcClient.make(TestRpcs)
|
|
153
150
|
const stream = client.StreamDefect({ count: 4, defectAfter: 1 })
|
|
154
151
|
const error = yield* Stream.runCollect(stream).pipe(Effect.exit)
|
|
@@ -163,23 +160,21 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
163
160
|
}
|
|
164
161
|
}"
|
|
165
162
|
`)
|
|
166
|
-
}
|
|
163
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
167
164
|
)
|
|
168
165
|
|
|
169
|
-
Vitest.scopedLive(
|
|
170
|
-
|
|
171
|
-
Effect.fn(function* () {
|
|
166
|
+
Vitest.scopedLive('should handle stream interruption via HTTP', (test) =>
|
|
167
|
+
Effect.gen(function* () {
|
|
172
168
|
const client = yield* RpcClient.make(TestRpcs)
|
|
173
169
|
const stream = client.StreamInterruptible({ delay: 50, interruptAfterCount: 3 }).pipe(Stream.take(3))
|
|
174
170
|
const chunks = yield* Stream.runCollect(stream)
|
|
175
171
|
expect(Chunk.toReadonlyArray(chunks)).toEqual([1, 2, 3])
|
|
176
|
-
}
|
|
172
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
177
173
|
)
|
|
178
174
|
|
|
179
175
|
// TODO @IMax153
|
|
180
|
-
Vitest.scopedLive.skip(
|
|
181
|
-
|
|
182
|
-
Effect.fn(function* () {
|
|
176
|
+
Vitest.scopedLive.skip('should handle streaming RPC bug scenario', (test) =>
|
|
177
|
+
Effect.gen(function* () {
|
|
183
178
|
const client = yield* RpcClient.make(TestRpcs)
|
|
184
179
|
yield* client.StreamBugScenarioDoClient({})
|
|
185
180
|
/*
|
|
@@ -230,6 +225,6 @@ Vitest.describe('Durable Object RPC', { timeout: 5000 }, () => {
|
|
|
230
225
|
```
|
|
231
226
|
|
|
232
227
|
*/
|
|
233
|
-
}
|
|
228
|
+
}).pipe(Effect.provide(ProtocolLive), withWranglerTest(test)),
|
|
234
229
|
)
|
|
235
230
|
})
|