fix indentation

This commit is contained in:
vnmedeiros 2020-02-19 15:46:18 -03:00
parent 146e6169d2
commit 56dc4d5206
1 changed files with 303 additions and 303 deletions

View File

@ -14,367 +14,367 @@ use Tainacan\Metadata_Types;
*/ */
class Metadata extends TAINACAN_UnitTestCase { class Metadata extends TAINACAN_UnitTestCase {
/** /**
* Test insert a regular metadatum with type * Test insert a regular metadatum with type
*/ */
function test_add() { function test_add() {
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection = $this->tainacan_entity_factory->create_entity( $collection = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'teste' 'name' => 'teste'
), ),
true true
); );
$metadatum = $this->tainacan_entity_factory->create_entity( $metadatum = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadado', 'name' => 'metadado',
'description' => 'descricao', 'description' => 'descricao',
'collection' => $collection, 'collection' => $collection,
'accept_suggestion' => true, 'accept_suggestion' => true,
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$test = $Tainacan_Metadata->fetch($metadatum->get_id()); $test = $Tainacan_Metadata->fetch($metadatum->get_id());
$this->assertEquals($test->get_name(), 'metadado'); $this->assertEquals($test->get_name(), 'metadado');
$this->assertEquals($test->get_description(), 'descricao'); $this->assertEquals($test->get_description(), 'descricao');
$this->assertEquals($test->get_collection_id(), $collection->get_id()); $this->assertEquals($test->get_collection_id(), $collection->get_id());
$this->assertTrue((bool) $test->get_accept_suggestion()); $this->assertTrue((bool) $test->get_accept_suggestion());
} }
/** /**
* Test insert a regular metadatum with type * Test insert a regular metadatum with type
*/ */
function test_add_type(){ function test_add_type(){
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection = $this->tainacan_entity_factory->create_entity( $collection = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'teste' 'name' => 'teste'
), ),
true true
); );
$metadatum = $this->tainacan_entity_factory->create_entity( $metadatum = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadado', 'name' => 'metadado',
'description' => 'descricao', 'description' => 'descricao',
'collection_id' => $collection->get_id(), 'collection_id' => $collection->get_id(),
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$test = $Tainacan_Metadata->fetch($metadatum->get_id()); $test = $Tainacan_Metadata->fetch($metadatum->get_id());
$this->assertEquals($test->get_name(), 'metadado'); $this->assertEquals($test->get_name(), 'metadado');
$this->assertEquals($test->get_collection_id(), $collection->get_id()); $this->assertEquals($test->get_collection_id(), $collection->get_id());
$this->assertEquals('Tainacan\Metadata_Types\Text', $test->get_metadata_type()); $this->assertEquals('Tainacan\Metadata_Types\Text', $test->get_metadata_type());
$this->assertEquals($test->get_metadata_type(), 'Tainacan\Metadata_Types\Text'); $this->assertEquals($test->get_metadata_type(), 'Tainacan\Metadata_Types\Text');
} }
/** /**
* test if parent metadatum are visible for children collection * test if parent metadatum are visible for children collection
*/ */
function test_hierarchy_metadata(){ function test_hierarchy_metadata(){
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$this->tainacan_entity_factory->create_entity( $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum default', 'name' => 'metadatum default',
'collection_id' => $Tainacan_Metadata->get_default_metadata_attribute(), 'collection_id' => $Tainacan_Metadata->get_default_metadata_attribute(),
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$collection_grandfather = $this->tainacan_entity_factory->create_entity( $collection_grandfather = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'collection grandfather' 'name' => 'collection grandfather'
), ),
true true
); );
$this->tainacan_entity_factory->create_entity( $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum grandfather', 'name' => 'metadatum grandfather',
'collection_id' => $collection_grandfather->get_id(), 'collection_id' => $collection_grandfather->get_id(),
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$collection_father = $this->tainacan_entity_factory->create_entity( $collection_father = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'collection father', 'name' => 'collection father',
'parent' => $collection_grandfather->get_id() 'parent' => $collection_grandfather->get_id()
), ),
true true
); );
$this->tainacan_entity_factory->create_entity( $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum father', 'name' => 'metadatum father',
'collection_id' => $collection_father->get_id(), 'collection_id' => $collection_father->get_id(),
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$collection_son = $this->tainacan_entity_factory->create_entity( $collection_son = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'collection son', 'name' => 'collection son',
'parent' => $collection_father->get_id() 'parent' => $collection_father->get_id()
), ),
true true
); );
$this->assertEquals( $collection_grandfather->get_id(), $collection_father->get_parent() ); $this->assertEquals( $collection_grandfather->get_id(), $collection_father->get_parent() );
$this->assertEquals( $collection_father->get_id(), $collection_son->get_parent() ); $this->assertEquals( $collection_father->get_id(), $collection_son->get_parent() );
$this->tainacan_entity_factory->create_entity( $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum son', 'name' => 'metadatum son',
'collection_id' => $collection_son->get_id(), 'collection_id' => $collection_son->get_id(),
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$retrieve_metadata = $Tainacan_Metadata->fetch_by_collection( $collection_son ); $retrieve_metadata = $Tainacan_Metadata->fetch_by_collection( $collection_son );
$retrieve_metadata_ids = $Tainacan_Metadata->fetch_ids_by_collection( $collection_son, [] ); $retrieve_metadata_ids = $Tainacan_Metadata->fetch_ids_by_collection( $collection_son, [] );
// should return 6 // should return 6
$this->assertEquals( 6, sizeof( $retrieve_metadata ) ); $this->assertEquals( 6, sizeof( $retrieve_metadata ) );
$this->assertEquals( 6, sizeof( $retrieve_metadata_ids ) ); $this->assertEquals( 6, sizeof( $retrieve_metadata_ids ) );
} }
/** /**
* test remove core metadata * test remove core metadata
*/ */
function test_core_metadata(){ function test_core_metadata(){
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection_grandfather = $this->tainacan_entity_factory->create_entity( $collection_grandfather = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'collection metadatum' 'name' => 'collection metadatum'
), ),
true true
); );
$core_metadata = $Tainacan_Metadata->get_core_metadata( $collection_grandfather ); $core_metadata = $Tainacan_Metadata->get_core_metadata( $collection_grandfather );
if( $core_metadata ){ if( $core_metadata ){
foreach( $core_metadata as $core_metadatum ){ foreach( $core_metadata as $core_metadatum ){
$this->assertFalse(wp_trash_post( $core_metadatum->get_id() ) ); $this->assertFalse(wp_trash_post( $core_metadatum->get_id() ) );
} }
} }
} }
/** /**
* test if the defaults types are registered * test if the defaults types are registered
*/ */
function test_metadata_metadata_type(){ function test_metadata_metadata_type(){
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$this->assertEquals( 7, sizeof( $Tainacan_Metadata->fetch_metadata_types() ) ); $this->assertEquals( 7, sizeof( $Tainacan_Metadata->fetch_metadata_types() ) );
} }
/** /**
* *
*/ */
function test_ordenation_metadata(){ function test_ordenation_metadata(){
$Tainacan_Collections = \Tainacan\Repositories\Collections::get_instance(); $Tainacan_Collections = \Tainacan\Repositories\Collections::get_instance();
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection = $this->tainacan_entity_factory->create_entity( $collection = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'teste' 'name' => 'teste'
), ),
true true
); );
$metadatum1 = $this->tainacan_entity_factory->create_entity( $metadatum1 = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum1', 'name' => 'metadatum1',
'description' => 'descricao', 'description' => 'descricao',
'collection' => $collection, 'collection' => $collection,
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$metadatum2 = $this->tainacan_entity_factory->create_entity( $metadatum2 = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum2', 'name' => 'metadatum2',
'description' => 'metadatum2', 'description' => 'metadatum2',
'collection' => $collection, 'collection' => $collection,
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$metadatum3 = $this->tainacan_entity_factory->create_entity( $metadatum3 = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'metadatum3', 'name' => 'metadatum3',
'description' => 'metadatum3', 'description' => 'metadatum3',
'collection' => $collection, 'collection' => $collection,
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
'status' => 'publish' 'status' => 'publish'
), ),
true true
); );
$collection->set_metadata_order( $collection->set_metadata_order(
[ [
array( 'id' => $metadatum3->get_id(), 'enabled' => false ), array( 'id' => $metadatum3->get_id(), 'enabled' => false ),
array( 'id' => $metadatum2->get_id(), 'enabled' => true ), array( 'id' => $metadatum2->get_id(), 'enabled' => true ),
array( 'id' => $metadatum1->get_id(), 'enabled' => true ) array( 'id' => $metadatum1->get_id(), 'enabled' => true )
]); ]);
$update_collection = $Tainacan_Collections->update( $collection ); $update_collection = $Tainacan_Collections->update( $collection );
$metadata_ordinate = $Tainacan_Metadata->fetch_by_collection( $update_collection ); $metadata_ordinate = $Tainacan_Metadata->fetch_by_collection( $update_collection );
$this->assertEquals( 'metadatum2', $metadata_ordinate[0]->get_name() ); $this->assertEquals( 'metadatum2', $metadata_ordinate[0]->get_name() );
$metadata_ordinate_enabled = $Tainacan_Metadata->fetch_by_collection( $update_collection, [ 'include_disabled' => true ] ); $metadata_ordinate_enabled = $Tainacan_Metadata->fetch_by_collection( $update_collection, [ 'include_disabled' => true ] );
$this->assertEquals( 'metadatum3', $metadata_ordinate_enabled[0]->get_name() ); $this->assertEquals( 'metadatum3', $metadata_ordinate_enabled[0]->get_name() );
$this->assertFalse($metadata_ordinate_enabled[0]->get_enabled_for_collection()); $this->assertFalse($metadata_ordinate_enabled[0]->get_enabled_for_collection());
$this->assertTrue($metadata_ordinate_enabled[1]->get_enabled_for_collection()); $this->assertTrue($metadata_ordinate_enabled[1]->get_enabled_for_collection());
$this->assertTrue($metadata_ordinate_enabled[2]->get_enabled_for_collection()); $this->assertTrue($metadata_ordinate_enabled[2]->get_enabled_for_collection());
} }
function test_unique_slugs() { function test_unique_slugs() {
$x = $this->tainacan_entity_factory->create_entity( $x = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'teste', 'name' => 'teste',
'description' => 'adasdasdsa', 'description' => 'adasdasdsa',
'slug' => 'duplicated_slug', 'slug' => 'duplicated_slug',
'status' => 'publish', 'status' => 'publish',
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$y = $this->tainacan_entity_factory->create_entity( $y = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'teste', 'name' => 'teste',
'description' => 'adasdasdsa', 'description' => 'adasdasdsa',
'slug' => 'duplicated_slug', 'slug' => 'duplicated_slug',
'status' => 'publish', 'status' => 'publish',
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$this->assertNotEquals($x->get_slug(), $y->get_slug()); $this->assertNotEquals($x->get_slug(), $y->get_slug());
// Create as draft and publish later // Create as draft and publish later
$x = $this->tainacan_entity_factory->create_entity( $x = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'teste', 'name' => 'teste',
'description' => 'adasdasdsa', 'description' => 'adasdasdsa',
'slug' => 'duplicated_slug', 'slug' => 'duplicated_slug',
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$y = $this->tainacan_entity_factory->create_entity( $y = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'teste', 'name' => 'teste',
'description' => 'adasdasdsa', 'description' => 'adasdasdsa',
'slug' => 'duplicated_slug', 'slug' => 'duplicated_slug',
'metadata_type' => 'Tainacan\Metadata_Types\Text', 'metadata_type' => 'Tainacan\Metadata_Types\Text',
), ),
true true
); );
$this->assertEquals($x->get_slug(), $y->get_slug()); $this->assertEquals($x->get_slug(), $y->get_slug());
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$x->set_status('publish'); $x->set_status('publish');
$x->validate(); $x->validate();
$x = $Tainacan_Metadata->insert($x); $x = $Tainacan_Metadata->insert($x);
$y->set_status('private'); // or publish shoud behave the same $y->set_status('private'); // or publish shoud behave the same
$y->validate(); $y->validate();
$y = $Tainacan_Metadata->insert($y); $y = $Tainacan_Metadata->insert($y);
$this->assertNotEquals($x->get_slug(), $y->get_slug()); $this->assertNotEquals($x->get_slug(), $y->get_slug());
} }
function test_validation_of_metadata_types() { function test_validation_of_metadata_types() {
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection = $this->tainacan_entity_factory->create_entity( $collection = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'teste' 'name' => 'teste'
), ),
true true
); );
$validMetadatum = new \Tainacan\Entities\Metadatum(); $validMetadatum = new \Tainacan\Entities\Metadatum();
$validMetadatum->set_name('test'); $validMetadatum->set_name('test');
$validMetadatum->set_description('test'); $validMetadatum->set_description('test');
$validMetadatum->set_collection($collection); $validMetadatum->set_collection($collection);
$validMetadatum->set_metadata_type('Tainacan\Metadata_Types\Relationship'); $validMetadatum->set_metadata_type('Tainacan\Metadata_Types\Relationship');
$validMetadatum->set_metadata_type_options(['collection_id' => 12]); $validMetadatum->set_metadata_type_options(['collection_id' => 12]);
$this->assertTrue($validMetadatum->validate()); $this->assertTrue($validMetadatum->validate());
$invalidMetadatum = new \Tainacan\Entities\Metadatum(); $invalidMetadatum = new \Tainacan\Entities\Metadatum();
$invalidMetadatum->set_name('test'); $invalidMetadatum->set_name('test');
$invalidMetadatum->set_description('test'); $invalidMetadatum->set_description('test');
$invalidMetadatum->set_collection($collection); $invalidMetadatum->set_collection($collection);
$invalidMetadatum->set_status('publish'); $invalidMetadatum->set_status('publish');
$invalidMetadatum->set_metadata_type('Tainacan\Metadata_Types\Relationship'); $invalidMetadatum->set_metadata_type('Tainacan\Metadata_Types\Relationship');
$invalidMetadatum->set_metadata_type_options(['collection_id' => 'string']); $invalidMetadatum->set_metadata_type_options(['collection_id' => 'string']);
$this->assertFalse($invalidMetadatum->validate()); $this->assertFalse($invalidMetadatum->validate());
} }
function test_metadata_type_option_index() { function test_metadata_type_option_index() {
$Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance(); $Tainacan_Metadata = \Tainacan\Repositories\Metadata::get_instance();
$collection = $this->tainacan_entity_factory->create_entity( $collection = $this->tainacan_entity_factory->create_entity(
'collection', 'collection',
array( array(
'name' => 'test', 'name' => 'test',
@ -391,23 +391,23 @@ class Metadata extends TAINACAN_UnitTestCase {
), ),
true true
); );
$metadatum = $this->tainacan_entity_factory->create_entity( $metadatum = $this->tainacan_entity_factory->create_entity(
'metadatum', 'metadatum',
array( array(
'name' => 'meta', 'name' => 'meta',
'description' => 'description', 'description' => 'description',
'collection' => $collection, 'collection' => $collection,
'metadata_type' => 'Tainacan\Metadata_Types\Taxonomy', 'metadata_type' => 'Tainacan\Metadata_Types\Taxonomy',
'status' => 'publish', 'status' => 'publish',
'metadata_type_options' => [ 'metadata_type_options' => [
'taxonomy_id' => $tax->get_id(), 'taxonomy_id' => $tax->get_id(),
'allow_new_terms' => 'no' 'allow_new_terms' => 'no'
] ]
), ),
true true
); );
$test_meta = get_post_meta($metadatum->get_id(), '_option_taxonomy_id', true); $test_meta = get_post_meta($metadatum->get_id(), '_option_taxonomy_id', true);
$this->assertEquals( $tax->get_id(), $test_meta ); $this->assertEquals( $tax->get_id(), $test_meta );
@ -621,14 +621,14 @@ class Metadata extends TAINACAN_UnitTestCase {
*/ */
class RandomType extends Metadata_Types\Metadata_Type { class RandomType extends Metadata_Types\Metadata_Type {
function __construct(){ function __construct(){
parent::__construct(); parent::__construct();
} }
/** /**
* @param $metadatum * @param $metadatum
* @return string * @return string
*/ */
public function render( $metadatum ){} public function render( $metadatum ){}
} }