aglinxinyuan opened a new issue, #7614: URL: https://github.com/apache/texera/issues/7614
### Task Summary `amber/src/main/scala/org/apache/texera/web/TexeraWebApplication.scala` has **no spec and sits at 0% of 76 lines**. It is the entry point that assembles the public web service: the asset bundle serving the built frontend, the collaboration websocket endpoint, the CORS and cache-control filters, the request log, and the 404-to-index rule that makes Angular's deep links work. Entry points here are **not** conventionally excluded, contrary to an older note in this project — sibling Dropwizard entry points already have merged specs driving `run()` against a mocked `Environment`, one of them in #7561. `initialize()` and the whole of `run()` execute against a real Dropwizard `Environment` outside a server, so 68 of the 76 lines are reachable. The 8 that are not are `main()`, which binds a port, and one unused logger. Three things are worth knowing before writing assertions here, because each produces a test that looks stronger than it is: 1. **`FileAssetsBundle` takes three arguments and only one of them is easy to observe.** Asserting the servlet mapping pins the uriPath and nothing else — point the bundle at a directory that does not exist and the servlet is still registered at `/*`, it just serves nothing. `FileAssetServlet.getIndexFile` is public; the source directory needs one reflective read of its `resourcePath` field. 2. **The request-log filter's level is separate from its guard.** A test that pins `isInfoEnabled` does not pin the level the line is emitted at: move the emission to WARN and an INFO-level test still collects an identical line while the suppression test still sees nothing. Assert the event's level, not just its text. 3. **A `java.lang.reflect.Proxy` response that answers `getStatus` with a constant cannot pin ordering.** Moving `chain.doFilter` after the logging block — which in production would make every access line report a status that has not been written yet — is invisible to such a fixture. ### Task Type - [ ] Refactor / Cleanup - [ ] DevOps / Deployment / CI - [x] Testing / QA - [ ] Documentation - [ ] Performance - [ ] Other -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
