首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何丢弃所有Mojolicious路由?

如何丢弃所有Mojolicious路由?
EN

Stack Overflow用户
提问于 2018-04-27 01:30:54
回答 1查看 247关注 0票数 5

完整的Mojolicious应用程序具有routes命令,该命令将转储应用程序路由:

代码语言:javascript
复制
script/my_app.pl routes

如何在测试Lite应用程序脚本时做同样的事情?

代码语言:javascript
复制
use Mojo::Base -strict;
use Test::Mojo;
use Test::More;

use Mojolicious::Lite;

... # Routes defined here

my $t = Test::Mojo->new;

$t->dump_all_routes # What should I do here?
EN

回答 1

Stack Overflow用户

发布于 2018-04-27 02:59:18

Mojolicous::Lite应用程序是一个完全成熟的Mojolicious应用程序,只是具有更方便的语法。

不幸的是,Routes对象没有记录枚举所有路由的因此,您必须自己遍历路由树。Mojolicious::Command::routes command的相应源代码相当复杂。或者,您可以按名称->find($name)特定路由。

该应用程序可以作为$test->appTest::Mojo对象访问。请注意,该方法的文档包括验证路由的测试:

代码语言:javascript
复制
ok $t->app->routes->find('echo')->is_websocket, 'WebSocket route';

请注意,您必须使用应用程序名称初始化测试对象,或者稍后为其分配一个应用程序实例,以便通过测试对象访问应用程序。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50048891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档