public function testPop() { $listener = Mockery::mock(ListenerInterface::CLASS); $listener->shouldReceive('onCollectionChanged')->with(CollectionChangedEvent::CLASS)->once(); $items = $this->createRandomItems(); $list = new ArrayList($items); $list->addListener($listener); $prev_count = $list->getSize(); $last_item = $list->getLast(); $popped_item = $list->pop(); $this->assertEquals($prev_count - 1, $list->getSize()); $this->assertEquals($last_item, $popped_item); }