File
Blob: src/workerd/api/tests/js-rpc-socket-test.wd-test
| 1 | # Same as js-rpc-test.wd-test but seding RPC over a real socket. |
| 2 | # |
| 3 | # Note that in the BUILD file we explicitly disable info logging for this test because it's too |
| 4 | # noisy. |
| 5 | |
| 6 | using Workerd = import "/workerd/workerd.capnp"; |
| 7 | |
| 8 | const unitTests :Workerd.Config = ( |
| 9 | services = [ |
| 10 | ( name = "js-rpc-test", |
| 11 | worker = ( |
| 12 | modules = [ |
| 13 | (name = "worker", esModule = embed "js-rpc-test.js") |
| 14 | ], |
| 15 | compatibilityFlags = [ |
| 16 | "nodejs_compat", |
| 17 | "fetcher_no_get_put_delete", |
| 18 | "enable_abortsignal_rpc", |
| 19 | "enhanced_error_serialization", |
| 20 | "enable_ctx_exports", |
| 21 | "experimental", |
| 22 | "streams_enable_constructors", |
| 23 | "http_headers_getsetcookie", |
| 24 | "fetch_legacy_url", |
| 25 | "rpc_params_transfer_stubs"], |
| 26 | bindings = [ |
| 27 | (name = "self", service = "nonClass-loop"), |
| 28 | (name = "MyService", service = "MyService-loop"), |
| 29 | (name = "MyServiceProxy", service = "MyServiceProxy-loop"), |
| 30 | (name = "MyActor", durableObjectNamespace = "MyActor"), |
| 31 | (name = "ActorNoExtends", durableObjectNamespace = "ActorNoExtends"), |
| 32 | (name = "defaultExport", service = "default-loop"), |
| 33 | (name = "twelve", json = "12"), |
| 34 | (name = "GreeterFactory", service = "GreeterFactory-loop"), |
| 35 | ], |
| 36 | |
| 37 | durableObjectNamespaces = [ |
| 38 | (className = "MyActor", uniqueKey = "foo"), |
| 39 | (className = "ActorNoExtends", uniqueKey = "bar"), |
| 40 | ], |
| 41 | |
| 42 | durableObjectStorage = (inMemory = void), |
| 43 | ) |
| 44 | ), |
| 45 | ( name = "MyService-loop", |
| 46 | external = ( |
| 47 | address = "loopback:MyService-loop", |
| 48 | http = (capnpConnectHost = "cappy") |
| 49 | ) |
| 50 | ), |
| 51 | ( name = "MyServiceProxy-loop", |
| 52 | external = ( |
| 53 | address = "loopback:MyServiceProxy-loop", |
| 54 | http = (capnpConnectHost = "cappy") |
| 55 | ) |
| 56 | ), |
| 57 | ( name = "nonClass-loop", |
| 58 | external = ( |
| 59 | address = "loopback:nonClass-loop", |
| 60 | http = (capnpConnectHost = "cappy") |
| 61 | ) |
| 62 | ), |
| 63 | ( name = "default-loop", |
| 64 | external = ( |
| 65 | address = "loopback:default-loop", |
| 66 | http = (capnpConnectHost = "cappy") |
| 67 | ) |
| 68 | ), |
| 69 | ( name = "GreeterFactory-loop", |
| 70 | external = ( |
| 71 | address = "loopback:GreeterFactory-loop", |
| 72 | http = (capnpConnectHost = "cappy") |
| 73 | ) |
| 74 | ), |
| 75 | ( name = "internet", network = ( allow = ["private"] ) ), |
| 76 | ], |
| 77 | sockets = [ |
| 78 | ( name = "MyService-loop", |
| 79 | address = "loopback:MyService-loop", |
| 80 | service = (name = "js-rpc-test", entrypoint = "MyService"), |
| 81 | http = (capnpConnectHost = "cappy") |
| 82 | ), |
| 83 | ( name = "MyServiceProxy-loop", |
| 84 | address = "loopback:MyServiceProxy-loop", |
| 85 | service = (name = "js-rpc-test", entrypoint = "MyServiceProxy"), |
| 86 | http = (capnpConnectHost = "cappy") |
| 87 | ), |
| 88 | ( name = "nonClass-loop", |
| 89 | address = "loopback:nonClass-loop", |
| 90 | service = (name = "js-rpc-test", entrypoint = "nonClass"), |
| 91 | http = (capnpConnectHost = "cappy") |
| 92 | ), |
| 93 | ( name = "default-loop", |
| 94 | address = "loopback:default-loop", |
| 95 | service = (name = "js-rpc-test"), |
| 96 | http = (capnpConnectHost = "cappy") |
| 97 | ), |
| 98 | ( name = "GreeterFactory-loop", |
| 99 | address = "loopback:GreeterFactory-loop", |
| 100 | service = (name = "js-rpc-test", entrypoint = "GreeterFactory"), |
| 101 | http = (capnpConnectHost = "cappy") |
| 102 | ), |
| 103 | # For testing connect() handler |
| 104 | (name = "tcp", address = "*:8081", tcp = (), service = "js-rpc-test") |
| 105 | ], |
| 106 | v8Flags = [ "--expose-gc" ], |
| 107 | ); |