feat: add http-sse and simple grpc application#204
Merged
officialasishkumar merged 7 commits intomainfrom Feb 17, 2026
Merged
Conversation
Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new Go sample app (http-sse) to demonstrate testing an application that serves normal HTTP endpoints and SSE endpoints on different ports, with Keploy-recorded test fixtures and Caddy reverse-proxy configs for routing.
Changes:
- Introduces a dual-server Go app: HTTP on
:8000and SSE on:8047, plus basic endpoints and two SSE streams. - Adds Caddy configs for record vs replay routing, and Keploy config + recorded HTTP/SSE test cases.
- Adds module setup (
go.mod) and documentation for running/recording/testing.
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| http-sse/main.go | Implements HTTP handlers and SSE streaming server on a separate port, plus shutdown wiring. |
| http-sse/go.mod | Declares the new sample module and Go version. |
| http-sse/Readme.md | Documents architecture and steps to run Caddy, record traffic, and replay tests. |
| http-sse/Caddyfile.record | Routes /subscribe/* to SSE port during recording. |
| http-sse/Caddyfile.replay | Replay routing configuration (currently routes SSE to HTTP port). |
| http-sse/keploy.yml | Keploy configuration for record/test and URL replacement rules. |
| http-sse/keploy/.gitignore | Ignores Keploy reports output. |
| http-sse/keploy/http/tests/test-*.yaml | Recorded Keploy HTTP test cases for the HTTP server endpoints. |
| http-sse/keploy/sse/tests/test-*.yaml | Recorded Keploy SSE test cases for the SSE endpoints. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…test cases. Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
…rking directory matrix.
Sarthak160
approved these changes
Feb 17, 2026
khareyash05
approved these changes
Feb 17, 2026
Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a comprehensive sample project for testing a Go application that serves both standard HTTP and Server-Sent Events (SSE) endpoints using Keploy. It includes configuration files, test cases, and documentation to demonstrate how to record and replay HTTP and SSE traffic routed through a Caddy reverse proxy. The changes enable automated, production-like testing of multi-port applications.
The most important changes are:
Sample Project Setup and Documentation
Readme.mdin thehttp-ssedirectory with detailed instructions on setting up, running, and testing a Go application with both HTTP and SSE endpoints using Keploy and Caddy as a reverse proxy.go.modfile for module initialization and Go version specification.Caddy Reverse Proxy Configuration
Caddyfile.recordandCaddyfile.replayto configure Caddy for routing/subscribe/student/events*and/subscribe/teacher/events*to the SSE server (port 8047 or 8000, depending on mode), and all other traffic to the HTTP server (port 8000). This enables accurate simulation of real-world routing during both test recording and replay. [1] [2]Keploy Configuration and Test Artifacts
keploy.ymlconfiguration file to manage Keploy's behavior for both recording and replaying tests, including port mappings, noise fields, and URL replacements for different environments..gitignoreto exclude test reports.Recorded Test Cases
keploy/http/tests/) covering various API endpoints, and SSE test cases (keploy/sse/tests/) for both student and teacher event streams. These YAML files enable Keploy to replay and verify application behavior. [1] [2] [3] [4] [5] [6] [7] [8] [9]