You are here

function NodequeueAdministerTestCase::testNodequeueAddQueue in Nodequeue 6.2

Same name and namespace in other branches
  1. 7.2 tests/nodequeue.test \NodequeueAdministerTestCase::testNodequeueAddQueue()

File

tests/nodequeue.test, line 272
Tests for the Nodequeue module.

Class

NodequeueAdministerTestCase

Code

function testNodequeueAddQueue() {

  // make sure we can access the administration page
  $this
    ->drupalGet('admin/content/nodequeue');
  $this
    ->assertText('Add nodequeue', t('"Add nodequeue" link is present.'), t('Nodequeue'));
  $this
    ->assertText('Settings', t('"Settings" link is present.'), t('Nodequeue'));
  $this
    ->assertText('No nodequeues exist.', t('Nodequeue table is empty.'), t('Nodequeue'));

  // create a nodequeue...
  $edit = array(
    'title' => 'Testqueue',
    'size' => 10,
    'link' => 'Add to %subqueue',
    'link_remove' => 'Remove from %subqueue',
    //      'roles[2]'     => '2', // FIXME: this makes the test fail...
    'types[story]' => 'story',
    'types[page]' => 'page',
  );
  $this
    ->drupalPost('admin/content/nodequeue/add/nodequeue', $edit, 'Submit');

  // ...and make sure we can add a node to it
  $node = $this
    ->drupalCreateNode(array(
    'type' => 'story',
    'promote' => 1,
  ));
  $this
    ->drupalGet('node/' . $node->nid);
  $this
    ->assertRaw('<a href="' . base_path() . 'node/1/nodequeue">Nodequeue', t('Nodequeue tab is present.'), t('Nodequeue'));

  // add the node to the queue
  $this
    ->drupalGet('node/' . $node->nid . '/nodequeue');
  $this
    ->assertText('Testqueue', t('Nodequeue is shown in table.'), t('Nodequeue'));
  $this
    ->assertText('Queue empty', t('Nodequeue is currently empty.'), t('Nodequeue'));
  $this
    ->clickLink('Add to queue');
  $this
    ->assertRaw('class="nodequeue-in-queue">1', t('Nodequeue table reports correct number of elements in queue.'), t('Nodequeue'));

  // try sorting by queue size
  $this
    ->drupalGet('admin/content/nodequeue');
  $this
    ->clickLink('Max nodes');
  $this
    ->assertRaw('Max nodes<img src="' . base_path() . 'misc/arrow-desc.png"', t('Nodequeue table is sorted by max rows descending.'), t('Nodequeue'));
  $this
    ->drupalGet('admin/content/nodequeue');
  $this
    ->clickLink('Subqueues');
  $this
    ->assertRaw('Subqueues<img src="' . base_path() . 'misc/arrow-desc.png"', t('Nodequeue table is sorted by subqueues descending.'), t('Nodequeue'));
}