diff options
| author | bretticvs <bsdee@frii.com> | 2011-05-05 16:24:21 -0600 | 
|---|---|---|
| committer | bretticvs <bsdee@frii.com> | 2011-05-05 16:24:21 -0600 | 
| commit | fc093a5fe51d35a2991e549e8836cac15dc2888b (patch) | |
| tree | 3606d2acbcbf1d204ace13d8d610830eb1a8878d /tests/www | |
| parent | 8be81abfe6193e221afcdc35582d34505797a7b8 (diff) | |
| download | semanticscuttle-fc093a5fe51d35a2991e549e8836cac15dc2888b.tar.gz semanticscuttle-fc093a5fe51d35a2991e549e8836cac15dc2888b.tar.bz2 | |
Moved testDefaultPrivacyEdit() to tests/www/editTest.php.
Moved testDefaultPrivacyImportNetscape() to tests/www/importNetscapeTest.php.
Moved testDefaultPrivacyImport() to tests/www/importTest.php.
Moved testDefaultPrivacyBookmarksAddMissingTitleMissingPrivacy() to tests/www/bookmarksTest.php.
Moved testDefaultPrivacyBookmarksAdd() to tests/www/bookmarksTest.php.
Kept testDefaultPrivacyPrivate() in tests/api/PostsAddTest.php.
Kept testDefaultPrivacyPublic() in tests/api/PostsAddTest.php.
Diffstat (limited to 'tests/www')
| -rwxr-xr-x | tests/www/bookmarksTest.php | 80 | ||||
| -rwxr-xr-x | tests/www/editTest.php | 48 | ||||
| -rwxr-xr-x | tests/www/importNetscapeTest.php | 33 | ||||
| -rwxr-xr-x | tests/www/importTest.php | 33 | 
4 files changed, 194 insertions, 0 deletions
| diff --git a/tests/www/bookmarksTest.php b/tests/www/bookmarksTest.php new file mode 100755 index 0000000..df360cc --- /dev/null +++ b/tests/www/bookmarksTest.php @@ -0,0 +1,80 @@ +<?php +require_once dirname(__FILE__) . '/../prepare.php'; +require_once 'HTTP/Request2.php'; + +class www_bookmarksTest extends TestBaseApi +{ +    protected $urlPart = 'api/posts/add'; + +    /** +     * Test that the default privacy setting is selected in the Privacy +     * drop-down list when adding a new bookmark, sending the form and +     * missing the title and the privacy setting. +     */ +    public function testDefaultPrivacyBookmarksAddMissingTitleMissingPrivacy() +    { +        $this->setUnittestConfig( +            array('defaults' => array('privacy' => 2)) +        ); +        list($req, $uId) = $this->getLoggedInRequest(); +        $cookies = $req->getCookieJar(); +        $req->setMethod(HTTP_Request2::METHOD_POST); +        $req->addPostParameter('url', 'http://www.example.org/testdefaultprivacyposts_bookmarksget'); +        $req->addPostParameter('description', 'Test bookmark 1 for default privacy.'); +        $req->addPostParameter('status', '0'); +        $req->send(); + +        $bms = $this->bs->getBookmarks(0, null, $uId); +        $this->assertEquals(1, count($bms['bookmarks'])); +        $user = $this->us->getUser($uId); +        $reqUrl = $GLOBALS['unittestUrl'] . 'bookmarks.php/' . $user['username'] . '?action=get' . '&unittestMode=1'; + +        list($req, $uId) = $this->getAuthRequest('?unittestMode=1'); +        $req->setMethod(HTTP_Request2::METHOD_POST); +        $req->setUrl($reqUrl); +        $req->setCookieJar($cookies); +        $req->addPostParameter('submitted', '1'); +        $response = $req->send(); +        $response_body = $response->getBody(); + +        $x = simplexml_load_string($response_body); +        $ns = $x->getDocNamespaces(); +        $x->registerXPathNamespace('ns', reset($ns)); + +        $elements = $x->xpath('//ns:select[@name="status"]/ns:option[@selected="selected"]'); +        $this->assertEquals(1, count($elements), 'No selected status option found'); +        $this->assertEquals(2, (string)$elements[0]['value']); +    }//end testDefaultPrivacyBookmarksAddMissingTitleMissingPrivacy + + +    /** +     * Test that the default privacy setting is selected in the Privacy +     * drop-down list when a new bookmark is being created. +     */ +    public function testDefaultPrivacyBookmarksAdd() +    { +        $this->setUnittestConfig( +            array('defaults' => array('privacy' => 1)) +        ); +        list($req, $uId) = $this->getLoggedInRequest('?unittestMode=1'); + +        $user = $this->us->getUser($uId); +        $reqUrl = $GLOBALS['unittestUrl'] . 'bookmarks.php/' +            . $user['username'] . '?action=add' . '&unittestMode=1'; +        $req->setUrl($reqUrl); +        $req->setMethod(HTTP_Request2::METHOD_GET); +        $response = $req->send(); +        $response_body = $response->getBody(); +        $this->assertNotEquals('', $response_body, 'Response is empty'); + +        $x = simplexml_load_string($response_body); +        $ns = $x->getDocNamespaces(); +        $x->registerXPathNamespace('ns', reset($ns)); + +        $elements = $x->xpath('//ns:select[@name="status"]/ns:option[@selected="selected"]'); +        $this->assertEquals(1, count($elements), 'No selected status option found'); +        $this->assertEquals(1, (string)$elements[0]['value']); +    }//end testDefaultPrivacyBookmarksAdd + +}//end class www_bookmarksTest +?> diff --git a/tests/www/editTest.php b/tests/www/editTest.php new file mode 100755 index 0000000..1e0fbd5 --- /dev/null +++ b/tests/www/editTest.php @@ -0,0 +1,48 @@ +<?php +require_once dirname(__FILE__) . '/../prepare.php'; +require_once 'HTTP/Request2.php'; + +class www_editTest extends TestBaseApi +{ +    protected $urlPart = 'api/posts/add'; + +    /** +     * Test that the default privacy setting is used when an existing +     * bookmark is updated with edit.php. +     */ +    public function testDefaultPrivacyEdit() +    { +        $this->setUnittestConfig( +            array('defaults' => array('privacy' => 2)) +        ); + +        list($req, $uId) = $this->getLoggedInRequest('?unittestMode=1'); +        $cookies = $req->getCookieJar(); +        $req->setMethod(HTTP_Request2::METHOD_POST); +        $req->addPostParameter('url', 'http://www.example.org/testdefaultprivacyposts_edit'); +        $req->addPostParameter('description', 'Test bookmark 2 for default privacy.'); +        $req->addPostParameter('status', '0'); +        $res = $req->send(); +        $this->assertEquals( +            200, $res->getStatus(), +            'Adding bookmark failed: ' . $res->getBody()); +        $bms = $this->bs->getBookmarks(0, null, $uId); +        $bm  = reset($bms['bookmarks']); +        $bmId = $bm['bId']; + +        $reqUrl = $GLOBALS['unittestUrl'] . 'edit.php/' . $bmId . '?unittestMode=1'; +        $req2 = new HTTP_Request2($reqUrl, HTTP_Request2::METHOD_POST); +        $req2->setCookieJar($cookies); +        $req2->addPostParameter('address', 'http://www.example.org/testdefaultprivacyposts_edit'); +        $req2->addPostParameter('title', 'Test bookmark 2 for default privacy.'); +        $req2->addPostParameter('submitted', '1'); +        $res = $req2->send(); + +        $this->assertEquals(302, $res->getStatus(), 'Editing bookmark failed'); + +        $bm = $this->bs->getBookmark($bmId); +        $this->assertEquals('2', $bm['bStatus']); +    }//end testDefaultPrivacyEdit + +}//end class www_editTest +?> diff --git a/tests/www/importNetscapeTest.php b/tests/www/importNetscapeTest.php new file mode 100755 index 0000000..9d4cacd --- /dev/null +++ b/tests/www/importNetscapeTest.php @@ -0,0 +1,33 @@ +<?php +require_once dirname(__FILE__) . '/../prepare.php'; +require_once 'HTTP/Request2.php'; + +class www_importNetscapeTest extends TestBaseApi +{ +    protected $urlPart = 'importNetscape.php'; + +    /** +     * Test that the default privacy setting is used when bookmarks +     * are imported from an HTML bookmarks file using importNetscape.php. +     */ +    public function testDefaultPrivacyImportNetscape() +    { +        $this->setUnittestConfig( +            array('defaults' => array('privacy' => 1)) +        ); +        list($req, $uId) = $this->getLoggedInRequest(); +        $req->setMethod(HTTP_Request2::METHOD_POST); +        $req->setUrl($GLOBALS['unittestUrl'] . 'importNetscape.php' . '?unittestMode=1'); +        $req->addUpload('userfile', dirname(__FILE__) . '/../data/BookmarkTest_netscapebookmarks.html'); +        $res = $req->send(); +        $this->assertEquals(200, $res->getStatus(), 'Bookmark import failed'); + +        $this->us->setCurrentUserId($uId); +        $bms = $this->bs->getBookmarks(0, null, $uId); +        $this->assertEquals(3, count($bms['bookmarks'])); +        $bm = reset($bms['bookmarks']); +        $this->assertEquals('1', $bm['bStatus']); +    }//end testDefaultPrivacyImportNetscape + +}//end class www_importNetscapeTest +?> diff --git a/tests/www/importTest.php b/tests/www/importTest.php new file mode 100755 index 0000000..895a320 --- /dev/null +++ b/tests/www/importTest.php @@ -0,0 +1,33 @@ +<?php +require_once dirname(__FILE__) . '/../prepare.php'; +require_once 'HTTP/Request2.php'; + +class www_importTest extends TestBaseApi +{ +    protected $urlPart = 'import.php'; + +    /** +     * Test that the default privacy setting is used when bookmarks +     * are imported from an XML bookmarks file using import.php. +     */ +    public function testDefaultPrivacyImport() +    { +        $this->setUnittestConfig( +            array('defaults' => array('privacy' => 2)) +        ); +        list($req, $uId) = $this->getLoggedInRequest(); +        $req->setMethod(HTTP_Request2::METHOD_POST); +        $req->setUrl($GLOBALS['unittestUrl'] . 'import.php' . '?unittestMode=1'); +        $req->addUpload('userfile', dirname(__FILE__) . '/../data/BookmarkTest_deliciousbookmarks.xml'); +        $res = $req->send(); +        $this->assertEquals(302, $res->getStatus(), 'Bookmark import failed'); + +        $this->us->setCurrentUserId($uId); +        $bms = $this->bs->getBookmarks(0, null, $uId); +        $this->assertEquals(3, count($bms['bookmarks'])); +        $bm = reset($bms['bookmarks']); +        $this->assertEquals('2', $bm['bStatus']); +    }//end testDefaultPrivacyImport + +}//end class www_importTest +?> | 
