Fix qldoc and tests

This commit is contained in:
Joe Farebrother
2025-11-24 13:57:43 +00:00
parent 9c3f4e2bfb
commit dada49f402
2 changed files with 11 additions and 4 deletions

View File

@@ -437,7 +437,13 @@ module Tornado {
/** Gets a reference to the `tornado.websocket` module. */ /** Gets a reference to the `tornado.websocket` module. */
API::Node websocket() { result = Tornado::tornado().getMember("websocket") } API::Node websocket() { result = Tornado::tornado().getMember("websocket") }
/** Provides models for the `tornado.websocket` module */
module WebSocket { module WebSocket {
/**
* Provides models for the `tornado.websocket.WebSocketHandler` class and subclasses.
*
* See https://www.tornadoweb.org/en/stable/websocket.html#tornado.websocket.WebSocketHandler.
*/
module WebSocketHandler { module WebSocketHandler {
/** Gets a reference to the `tornado.websocket.WebSocketHandler` class or any subclass. */ /** Gets a reference to the `tornado.websocket.WebSocketHandler` class or any subclass. */
API::Node subclassRef() { API::Node subclassRef() {
@@ -447,6 +453,7 @@ module Tornado {
ModelOutput::getATypeNode("tornado.websocket.WebSocketHandler~Subclass").getASubclass*() ModelOutput::getATypeNode("tornado.websocket.WebSocketHandler~Subclass").getASubclass*()
} }
/** A subclass of `tornado.websocket.WebSocketHandler`. */
class WebSocketHandlerClass extends Web::RequestHandler::RequestHandlerClass { class WebSocketHandlerClass extends Web::RequestHandler::RequestHandlerClass {
WebSocketHandlerClass() { this.getParent() = subclassRef().asSource().asExpr() } WebSocketHandlerClass() { this.getParent() = subclassRef().asSource().asExpr() }
@@ -457,7 +464,7 @@ module Tornado {
result.getName() = "open" result.getName() = "open"
} }
/** Gets a function that could handle incoming websocket events, if any. */ /** Gets a function that could handle incoming WebSocket events, if any. */
Function getAWebSocketEventHandler() { Function getAWebSocketEventHandler() {
result = this.getAMethod() and result = this.getAMethod() and
result.getName() = result.getName() =
@@ -580,7 +587,7 @@ module Tornado {
override string getFramework() { result = "Tornado" } override string getFramework() { result = "Tornado" }
} }
/** A request handler for WebSocket events */ /** A request handler for WebSocket events. */
private class TornadoWebSocketEventHandler extends Http::Server::RequestHandler::Range { private class TornadoWebSocketEventHandler extends Http::Server::RequestHandler::Range {
TornadoWebSocketEventHandler() { TornadoWebSocketEventHandler() {
exists(TornadoModule::WebSocket::WebSocketHandler::WebSocketHandlerClass cls | exists(TornadoModule::WebSocket::WebSocketHandler::WebSocketHandlerClass cls |

View File

@@ -1,5 +1,6 @@
import tornado.web import tornado.web
import tornado.routing import tornado.routing
import tornado.websocket
class FooHandler(tornado.web.RequestHandler): class FooHandler(tornado.web.RequestHandler):
@@ -56,7 +57,7 @@ class PossiblyNotRouted(tornado.web.RequestHandler):
class WebSocket(tornado.websocket.WebSocketHandler): class WebSocket(tornado.websocket.WebSocketHandler):
def open(self, x): # $ requestHandler routedParameter=x def open(self, x): # $ requestHandler routedParameter=x
self.write_message("WebSocket open {}".format(x)) self.write_message("WebSocket open {}".format(x))
def on_message(self, data): # $ requestHandler routedParameter=data def on_message(self, data): # $ requestHandler routedParameter=data
self.write_message("WebSocket on_message {}".format(data)) self.write_message("WebSocket on_message {}".format(data))
@@ -74,7 +75,6 @@ class WebSocket(tornado.websocket.WebSocketHandler):
print("check_origin", origin) print("check_origin", origin)
return True return True
def make_app(): def make_app():
# see https://www.tornadoweb.org/en/stable/routing.html for even more examples # see https://www.tornadoweb.org/en/stable/routing.html for even more examples