diff options
Diffstat (limited to 'debian/vendor-h2o/t/50mruby-acl.t')
-rw-r--r-- | debian/vendor-h2o/t/50mruby-acl.t | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/debian/vendor-h2o/t/50mruby-acl.t b/debian/vendor-h2o/t/50mruby-acl.t new file mode 100644 index 0000000..0c84a68 --- /dev/null +++ b/debian/vendor-h2o/t/50mruby-acl.t @@ -0,0 +1,39 @@ +use strict; +use warnings; +use Digest::MD5 qw(md5_hex); +use Test::More; +use Test::Exception; +use t::Util; + +plan skip_all => 'mruby support is off' + unless server_features()->{mruby}; + +subtest "invalid configuration 1" => sub { + throws_ok sub { + spawn_h2o(<< 'EOT'); +hosts: + default: + paths: + /: + mruby.handler: | + acl { respond(403) } + acl { respond(200) } +EOT + }, qr/server failed to start/, 'acl cannot be called more than once'; +}; + +subtest "invalid configuration 2" => sub { + throws_ok sub { + spawn_h2o(<< 'EOT'); +hosts: + default: + paths: + /: + mruby.handler: | + acl { respond(403) } + proc {|env| [200, {}, []]} +EOT + }, qr/server failed to start/, 'acl configuration is ignored'; +}; + +done_testing(); |