public function testSetAccessorOrderAlphabetical() { $metadata = new ClassMetadata(new \ReflectionClass(PropertyMetadataOrder::class)); $metadata->addAttributeMetadata(new PropertyMetadata(PropertyMetadataOrder::class, 'b')); $metadata->addAttributeMetadata(new PropertyMetadata(PropertyMetadataOrder::class, 'a')); $this->assertEquals(['b', 'a'], array_keys($metadata->getAttributesMetadata())); $metadata->setAccessorOrder(ClassMetadata::ACCESSOR_ORDER_ALPHABETICAL); $this->assertEquals(['a', 'b'], array_keys($metadata->getAttributesMetadata())); }
/** * Get the array of properties that should be serialized in an object * * @param ClassMetadata $metadata * * @return PropertyMetadata[] */ public function getNonSkippedProperties(ClassMetadata $metadata) { $this->assertInitialized(); /** @var PropertyMetadata[] $properties */ $properties = $metadata->getAttributesMetadata(); return array_filter($properties, [$this, 'filterPropertyMetadata']); }