dgate 2.1.0

DGate API Gateway - High-performance API gateway with JavaScript module support
Documentation
# DGate v2 Functional Tests

This directory contains functional tests to verify DGate v2's compatibility with various protocols.

## Prerequisites

- Rust toolchain (for building DGate and test servers)
- Node.js (for some test clients)
- Go (for gRPC tests - uses existing Go test servers)
- curl, wscat, grpcurl (command-line tools)

### Install test tools

```bash
# WebSocket client
npm install -g wscat

# gRPC client
brew install grpcurl

# HTTP/2 testing
brew install nghttp2  # provides nghttp and h2load
```

## Running Tests

```bash
# Run all tests
./run-all-tests.sh

# Run specific test suite
./http2/run-test.sh
./websocket/run-test.sh
./grpc/run-test.sh
./quic/run-test.sh
```

## Test Suites

### HTTP/2 Tests
- H2C (HTTP/2 cleartext) proxying
- HTTPS with HTTP/2 (ALPN negotiation)
- Server push (if supported)
- Stream multiplexing

### WebSocket Tests  
- WebSocket upgrade through proxy
- Bidirectional message passing
- Connection keep-alive
- Binary and text frames

### gRPC Tests
- Unary RPC through proxy
- Server streaming
- Client streaming
- Bidirectional streaming

### QUIC/HTTP3 Tests
- HTTP/3 upstream connections
- Connection migration
- 0-RTT resumption