public static function deserialize($data)
 {
     Assertion::isArray($data);
     $scopes = array_map(function ($scope) {
         return ShibbolethMetadataScope::deserialize($scope);
     }, $data);
     return new self($scopes);
 }
 /**
  * @test
  * @group        metadata
  *
  * @dataProvider invalidDeserializationDataProvider
  * @expectedException InvalidArgumentException
  *
  * @param mixed $invalidData
  */
 public function deserialization_requires_valid_data($invalidData)
 {
     ShibbolethMetadataScope::deserialize($invalidData);
 }