0
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2024-09-21 03:35:18 +00:00
htmlpurifier/tests/HTMLPurifier/ZipperTest.php
Edward Z. Yang f17490f009 Implementation of a Zipper, for efficient splice.
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
2013-10-13 01:16:32 -07:00

26 lines
838 B
PHP

<?php
class HTMLPurifier_ZipperTest extends HTMLPurifier_Harness
{
public function testBasicNavigation() {
list($z, $t) = HTMLPurifier_Zipper::fromArray(array(0,1,2,3));
$this->assertIdentical($t, 0);
$t = $z->next($t);
$this->assertIdentical($t, 1);
$t = $z->prev($t);
$this->assertIdentical($t, 0);
$t = $z->advance($t, 2);
$this->assertIdentical($t, 2);
$t = $z->delete();
$this->assertIdentical($t, 3);
$z->insertBefore(4);
$z->insertAfter(5);
$this->assertIdentical($z->toArray($t), array(0,1,4,3,5));
$t = $z->splice($t, 2, array(6,7));
$this->assertIdentical($t, 6);
$this->assertIdentical($z->toArray($t), array(0,1,4,6,7));
}
// ToDo: QuickCheck style test comparing with array_splice
}