summaryrefslogtreecommitdiff
path: root/t/spore-method
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--t/spore-method/base.t38
1 files changed, 38 insertions, 0 deletions
diff --git a/t/spore-method/base.t b/t/spore-method/base.t
new file mode 100644
index 0000000..5010c38
--- /dev/null
+++ b/t/spore-method/base.t
@@ -0,0 +1,38 @@
+use strict;
+use warnings;
+use Test::More;
+use Test::Exception;
+use Net::HTTP::Spore::Meta::Method;
+
+dies_ok {
+ Net::HTTP::Spore::Meta::Method->wrap(
+ name => 'test_method',
+ package_name => 'test::api',
+ body => sub { 1 },
+ );
+}
+"missing some params";
+
+like $@, qr/Attribute \(method\) is required/;
+
+ok my $method = Net::HTTP::Spore::Meta::Method->wrap(
+ name => 'test_method',
+ package_name => 'test::api',
+ body => sub { 1 },
+ method => 'GET',
+ path => '/user/',
+ ),
+ 'method created';
+
+is $method->method, 'GET', 'method is GET';
+
+ok $method = Net::HTTP::Spore::Meta::Method->wrap(
+ name => 'test_method',
+ package_name => 'test::api',
+ method => 'GET',
+ path => '/user/',
+ params => [qw/name id street/],
+ required => [qw/name id/],
+);
+
+done_testing;