PHP размер массива Джуди / количество - не то, что это утверждает?

Учитывая два экземпляра Judy, как нестатические методы size() и count () в любом из двух экземпляров могут возвращать то, что представляется суммой всех элементов в массивах Judy в одном и том же процессе PHP?

Это намеренно? Ничто, кажется, не указывает на это в документации. Я что-то пропустил? См. Модульный тест ниже. Сбой testSizeConsistent (), другие проходят, включая testIsSizeSum ()

class JudyTest extends PHPUnit_Framework_TestCase {

    private $a, $b;

    public function setUp() {

        $this->a = new Judy(Judy::STRING_TO_MIXED);
        $this->b = new Judy(Judy::STRING_TO_MIXED);
    }

    public function testSizeConsistent() {

        // lets populate a 
        $this->a->offsetSet("foo", "bar");
        $this->a->offsetSet("another", "value");

        // b couldn't have possibly grown?
        $this->assertTrue($this->b->size() === 0);

    }

    public function testSizeZero() {

        $this->assertTrue($this->a->size() === 0);
        $this->assertTrue($this->b->size() === 0);

    }

    public function testIsSizeSum() {

        $this->a->offsetSet("foo", "bar");
        $this->a->offsetSet("another", "value");
        $this->b->offsetSet("third", "..");

        $this->assertTrue($this->b->size() === 3);

    }


}

(я использую последний "бета" -табельный модуль php массива Judy от pecl (pecl.php.net/Judy-0.1.2) и последнюю версию libjudy, доступную в macports ( judy @1.0.5 (devel)) на OS X Lion)

Спасибо! Андраш

1 ответ

Решение

Это было определенно ошибка. Исправление выпущено, пожалуйста, попробуйте:

Другие вопросы по тегам