summaryrefslogtreecommitdiff
path: root/modules/blogapi/blogapi.test
diff options
context:
space:
mode:
Diffstat (limited to 'modules/blogapi/blogapi.test')
-rw-r--r--modules/blogapi/blogapi.test187
1 files changed, 0 insertions, 187 deletions
diff --git a/modules/blogapi/blogapi.test b/modules/blogapi/blogapi.test
deleted file mode 100644
index 18a72f218..000000000
--- a/modules/blogapi/blogapi.test
+++ /dev/null
@@ -1,187 +0,0 @@
-<?php
-// $Id$
-
-class BlogAPITestCase extends DrupalWebTestCase {
- public static function getInfo() {
- return array(
- 'name' => 'Blog API functionality',
- 'description' => 'Create, edit, and delete post; upload file; and set/get categories.',
- 'group' => 'Blog API',
- );
- }
-
- function setUp() {
- parent::setUp('blog', 'blogapi', 'taxonomy');
- }
-
- /**
- * Create, edit, and delete post; upload file; set/get categories.
- */
- function testBlogAPI() {
- global $base_url;
- // Create user.
- $web_user = $this->drupalCreateUser(array('create blog content', 'delete own blog content', 'edit own blog content', 'administer content with blog api'));
- // Create admin user and taxonomy for later use.
- $admin_user = $this->drupalCreateUser(array('administer taxonomy'));
- $this->drupalLogin($admin_user);
- $vid = $this->addVocabulary('simpletest_vocab');
- $term_1 = $this->addTerm($vid, 'simpletest_term1');
- $term_2 = $this->addTerm($vid, 'simpletest_term2');
-
- // Init common variables.
- $local = url($base_url . '/xmlrpc.php', array('external' => TRUE));
- $appid = 'simpletest';
-
- // Get user's blog.
- $result = xmlrpc($local, 'blogger.getUsersBlogs', $appid, $web_user->name, $web_user->pass_raw);
- $this->assertTrue($result, t('Request for user\'s blogs returned correctly.'));
-
- if ($result !== FALSE) {
- if ($this->assertTrue(array_key_exists('blogid', $result[0]), t('Blog found.'))) {
- $blog_id = $result[0]['blogid'];
- }
- }
-
- // Create post.
- $content = $this->randomName(32);
- $result = xmlrpc($local, 'blogger.newPost', $appid, $blog_id, $web_user->name, $web_user->pass_raw, $content, TRUE);
- $this->assertTrue($result, t('Post created.'));
-
- $nid = $result;
-
- // Check recent posts.
- $result = xmlrpc($local, 'blogger.getRecentPosts', $appid, $blog_id, $web_user->name, $web_user->pass_raw, 5);
- $this->assertTrue($result, t('Recent post list retrieved.'));
-
- if ($result !== FALSE && array_key_exists('title', $result[0])) {
- $this->assertEqual($content, $result[0]['title'], t('Post found.'));
- }
- else {
- $this->fail(t('Post found.'));
- }
-
- // Edit post.
- $content_new = $this->randomName(10);
- $result = xmlrpc($local, 'blogger.editPost', $appid, $nid, $web_user->name, $web_user->pass_raw, $content_new, TRUE);
- $this->assertTrue($result, t('Post successfully modified.'));
-
- // Upload file.
- $file = current($this->drupalGetTestFiles('text'));
- $file_contents = file_get_contents($file->uri);
- $file = array();
- $file['name'] = $this->randomName() . '.txt';
- $file['type'] = 'text';
- $file['bits'] = xmlrpc_base64($file_contents);
- $result = xmlrpc($local, 'metaWeblog.newMediaObject', $blog_id, $web_user->name, $web_user->pass_raw, $file);
- $this->assertTrue($result, t('File successfully uploaded.'));
-
- $url = (array_key_exists('url', $result) ? $result['url'] : '');
-
- // Check uploaded file.
- $this->drupalGet($url);
- $this->assertEqual($this->drupalGetContent(), $file_contents, t('Uploaded contents verified.'));
-
- // Set post categories.
- $categories = array(array('categoryId' => $term_1));
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, $categories);
- $this->assertTrue($result, t('Post categories set.'));
-
- // Get post categories.
- $result = xmlrpc($local, 'mt.getPostCategories', $nid, $web_user->name, $web_user->pass_raw);
- $this->assertTrue($result, t('Category list successfully retrieved.'));
-
- if ($result !== FALSE && isset($result[0]['categoryId'])) {
- $this->assertEqual($term_1, $result[0]['categoryId'], t('Category list verified.'));
- }
-
- // Test validation of category assignment.
- // Set post categories.
- $categories[] = array('categoryId' => $term_2);
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, $categories);
- $this->assertFalse($result, t('Post categories fail validation (attempt to post two when one is allowed).'));
-
- // Change to required.
- $this->updateVocabulary($vid, 'simpletest_vocab1', FALSE, TRUE);
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, array());
- $this->assertFalse($result, t("Post categories fail validation (none posted when it's required)."));
-
- // Change to allowing multiple, not required.
- $this->updateVocabulary($vid, 'simpletest_vocab1', TRUE, FALSE);
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, $categories);
- $this->assertTrue($result, t('Post categories pass validation (multiple allowed).'));
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, array());
- $this->assertTrue($result, t('Post categories pass validation (multiple allowed, none posted).'));
-
- // Change to multiple, but required.
- $this->updateVocabulary($vid, 'simpletest_vocab1', TRUE, TRUE);
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, $categories);
- $this->assertTrue($result, t('Post categories pass validation (multiple allowed).'));
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, array());
- $this->assertFalse($result, t("Post categories fail validation (none posted when it's required)."));
-
- // Try to add a non-existent term.
- $categories[] = array('categoryId' => $term_2 + 1);
- $result = xmlrpc($local, 'mt.setPostCategories', $nid, $web_user->name, $web_user->pass_raw, $categories);
- $this->assertFalse($result, t('Post categories fail validation (unknown term).'));
-
- // Delete post.
- $result = xmlrpc($local, 'blogger.deletePost', $appid, $nid, $web_user->name, $web_user->pass_raw, TRUE);
- $this->assertTrue($result, t('Post successfully deleted.'));
- }
-
- /**
- * Add taxonomy vocabulary.
- *
- * @param string $vocab
- * Vocabulary name.
- * @return integer
- * The vocab ID.
- */
- function addVocabulary($vocab) {
- // Create a vocabulary.
- $vocabulary = new stdClass();
- $vocabulary->name = $vocab;
- $vocabulary->description = $this->randomName();
- $vocabulary->machine_name = $this->randomName();
- $vocabulary->help = '';
- $vocabulary->nodes = array('blog' => 'blog');
- $vocabulary->weight = mt_rand(0, 10);
- taxonomy_vocabulary_save($vocabulary);
-
- return $vocabulary->vid;
- }
- /**
- * Update a taxonomy vocabulary.
- *
- * @param $vocab
- * Vocabulary name.
- * @return integer
- * The vocab ID.
- */
- function updateVocabulary($vid, $vocab, $multiple = FALSE, $required = FALSE) {
- $vocabulary = taxonomy_vocabulary_load($vid);
- $vocabulary->name = $vocab;
- $vocabulary->nodes = array('blog' => 'blog');
- $vocabulary->multiple = $multiple;
- $vocabulary->required = $required;
- taxonomy_vocabulary_save($vocabulary);
- }
-
- /**
- * Add a taxonomy term to vocabulary.
- *
- * @param integer $vid
- * Vocabulary ID.
- * @param string $term
- * Term name.
- * @return integer
- * The Term ID.
- */
- function addTerm($vid, $term_name) {
- $term = new stdClass();
- $term->name = $term_name;
- $term->vid = $vid;
- taxonomy_term_save($term);
- return $term->tid;
- }
-}