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

Учитывая два экземпляра 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 Ответ

1 голос
/ 31 мая 2012

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...