function NodequeueAPISubqueueUnitTest::testNodequeueSubqueueRemove in Nodequeue 6.2
Same name and namespace in other branches
- 7.2 tests/nodequeue.test \NodequeueAPISubqueueUnitTest::testNodequeueSubqueueRemove()
File
- tests/
nodequeue.test, line 726 - Tests for the Nodequeue module.
Class
Code
function testNodequeueSubqueueRemove() {
$queue = $this
->createNodequeue(array(
'page',
'story',
), array(
2,
), 3);
$subqueues = nodequeue_load_subqueues_by_queue($queue->qid);
$subqueue = array_shift($subqueues);
$nodes = array();
for ($i = 0; $i < 4; $i++) {
$nodes[] = $this
->drupalCreateNode(array(
'type' => 'story',
));
}
nodequeue_subqueue_add($queue, $subqueue, $nodes[0]->nid);
$this
->assertEqual($subqueue->count, 1, t('Subqueue contains one element.'), t('Nodequeue'));
nodequeue_subqueue_add($queue, $subqueue, $nodes[1]->nid);
$this
->assertEqual($subqueue->count, 2, t('Subqueue contains two elements.'), t('Nodequeue'));
nodequeue_subqueue_add($queue, $subqueue, $nodes[2]->nid);
$this
->assertEqual($subqueue->count, 3, t('Subqueue is full.'), t('Nodequeue'));
nodequeue_subqueue_remove($subqueue->sqid, 3);
$count = db_result(db_query('SELECT COUNT(*) FROM {nodequeue_nodes} WHERE sqid = %d', $subqueue->sqid));
$this
->assertEqual($count, 2, t('Subqueue contains two elements.'), t('Nodequeue'));
nodequeue_subqueue_add($queue, $subqueue, $nodes[3]->nid);
$pos = db_result(db_query('SELECT position FROM {nodequeue_nodes} WHERE sqid = %d AND nid = %d', $subqueue->sqid, $nodes[3]->nid));
$this
->assertEqual($pos, 3, t('New element added to back of queue.'), t('Nodequeue'));
nodequeue_subqueue_remove($subqueue->sqid, 1, 2);
$pos = db_result(db_query('SELECT position FROM {nodequeue_nodes} WHERE sqid = %d AND nid = %d', $subqueue->sqid, $nodes[3]->nid));
$this
->assertEqual($pos, 1, t('Remaining element moved to position 1.'), t('Nodequeue'));
}