From 191680ce49a2228710f0bfc6f6236e4f5bd0628b Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sun, 24 Jun 2018 02:33:57 -0400 Subject: add some tests --- t/basic.t | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 t/basic.t (limited to 't/basic.t') diff --git a/t/basic.t b/t/basic.t new file mode 100644 index 0000000..e01dadd --- /dev/null +++ b/t/basic.t @@ -0,0 +1,48 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; + +use lib 't/lib'; + +use WWW::YNAB; +use WWW::YNAB::MockUA; + +my $ua = WWW::YNAB::MockUA->new; +my $ynab = WWW::YNAB->new( + access_token => 'abcdef', + ua => $ua, +); + +is(scalar $ua->test_requests, 0); +ok(!$ynab->knows_rate_limit); +ok(!$ynab->knows_total_rate_limit); + +my @budgets = $ynab->budgets; +is(scalar @budgets, 1); +isa_ok($budgets[0], 'WWW::YNAB::Budget'); +is($budgets[0]->id, 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'); +is($budgets[0]->name, 'My Budget'); +is($budgets[0]->last_modified_on, "2018-06-23T17:04:12+00:00"); +is($budgets[0]->first_month, "2016-06-01"); +is($budgets[0]->last_month, "2018-07-01"); + +is(scalar $ua->test_requests, 1); +is(($ua->test_requests)[0][0], 'https://api.youneedabudget.com/v1/budgets'); +ok($ynab->knows_rate_limit); +ok($ynab->knows_total_rate_limit); +is($ynab->rate_limit, 1); +is($ynab->total_rate_limit, 200); + +my $user = $ynab->user; +isa_ok($user, 'WWW::YNAB::User'); +is($user->id, 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb'); + +is(scalar $ua->test_requests, 2); +is(($ua->test_requests)[1][0], 'https://api.youneedabudget.com/v1/user'); +ok($ynab->knows_rate_limit); +ok($ynab->knows_total_rate_limit); +is($ynab->rate_limit, 2); +is($ynab->total_rate_limit, 200); + +done_testing; -- cgit v1.2.3-54-g00ecf