From 0ac88dfdd73539a2d6dc2f19c1d97ae7afe0403e Mon Sep 17 00:00:00 2001 From: evnchn Date: Fri, 7 Aug 2026 01:24:54 +0800 Subject: [PATCH] Serve the alternate UI framework locally instead of from a CDN Co-Authored-By: Claude Opus 5 (1M context) --- tests/test_alternate_ui_frameworks.py | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/tests/test_alternate_ui_frameworks.py b/tests/test_alternate_ui_frameworks.py index a84b7d0d23..050c1cbbc6 100644 --- a/tests/test_alternate_ui_frameworks.py +++ b/tests/test_alternate_ui_frameworks.py @@ -1,6 +1,16 @@ +from fastapi.responses import PlainTextResponse + from nicegui import app, ui from nicegui.testing import Screen +UI_FRAMEWORK_BUNDLE = ''' + window.AlternateUI = { + install(app) { + app.component('alt-button', {template: ''}); + }, + }; +''' + def test_quasar(screen: Screen): @ui.page('/') @@ -11,13 +21,17 @@ def page(): assert screen.find_by_tag('button') -def test_element_plus(screen: Screen): +def test_alternate_framework(screen: Screen): + @app.get('/alternate-ui.js') + def alternate_ui(): + return PlainTextResponse(UI_FRAMEWORK_BUNDLE, media_type='text/javascript') + @ui.page('/') def page(): - ui.add_body_html('') - app.config.vue_config_script = 'app.use(ElementPlus);' + ui.add_body_html('') + app.config.vue_config_script = 'app.use(AlternateUI);' - ui.element('el-button') + ui.element('alt-button') screen.open('/') assert screen.find_by_tag('button')