source: sandbox/webservice/api/library/tonic/tests/resource.php @ 6019

Revision 6019, 2.1 KB checked in by niltonneto, 12 years ago (diff)

Ticket #2507 - Modificada implementação para alinhamento com projeto de camada REST.

  • Property svn:executable set to *
Line 
1<?php
2
3require_once('def/resource.php');
4
5/**
6 * @namespace Tonic\Tests
7 */
8class ResourceTester extends UnitTestCase {
9
10        function testRegexFirstResourceHaha() {
11                $config = array(
12                        'uri' => '/hahaha/youfunny'
13                );
14
15        $request = new Request($config);
16        $resource = $request->loadResource();
17        $response = $resource->exec($request);
18       
19        $this->assertEqual($response->code, '200');
20        $this->assertEqual($response->body, 'hahaha you funny');
21        }
22   
23        function testRegexFirstResourceHoho() {
24                $config = array(
25                        'uri' => '/hohoho/youfunny'
26                );
27
28        $request = new Request($config);
29        $resource = $request->loadResource();
30        $response = $resource->exec($request);
31       
32        $this->assertEqual($response->code, '200');
33        $this->assertEqual($response->body, 'hohoho you funny');
34        }
35   
36    function testFunctioningResourceExec() {
37       
38        $config = array(
39            'uri' => '/resourcetest/one'
40        );
41       
42        $request = new Request($config);
43        $resource = $request->loadResource();
44        $response = $resource->exec($request);
45       
46        $this->assertEqual($response->code, '200');
47        $this->assertEqual($response->body, 'test');
48       
49    }
50   
51    function testNoParametersArgumentToResourceConstructor() {
52       
53        $config = array(
54            'uri' => '/resourcetest/badconstructor'
55        );
56       
57        $this->expectError(new PatternExpectation('/Missing argument 1 for Resource::__construct/'));
58        $this->expectError(new PatternExpectation('/Undefined variable: parameters/'));
59       
60        $request = new Request($config);
61        $resource = $request->loadResource();
62       
63    }
64   
65    function testMethodDoesNotReturnResponseObject() {
66       
67        $config = array(
68            'uri' => '/resourcetest/badmethodresponse'
69        );
70       
71        $this->expectException(new PatternExpectation('/Method GET of (.+\\\\)?TestBadMethodResponse did not return a Response object/'));
72       
73        $request = new Request($config);
74        $resource = $request->loadResource();
75        $response = $resource->exec($request);
76       
77    }
78
79}
80
Note: See TracBrowser for help on using the repository browser.