criando testes para criação de taxonomias e termos destas taxonomias
This commit is contained in:
parent
f1ca439b04
commit
7e2dd2c199
|
@ -22,4 +22,67 @@ class Tainacan_Taxonomy extends Entity {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
// Getters
|
||||
|
||||
function get_id() {
|
||||
return $this->get_mapped_property('ID');
|
||||
}
|
||||
|
||||
|
||||
function get_name() {
|
||||
return $this->get_mapped_property('name');
|
||||
}
|
||||
|
||||
function get_parent() {
|
||||
return $this->get_mapped_property('parent');
|
||||
}
|
||||
|
||||
|
||||
function get_description() {
|
||||
return $this->get_mapped_property('description');
|
||||
}
|
||||
|
||||
function get_allow_insert() {
|
||||
return ( boolean ) $this->get_mapped_property('allow_insert');
|
||||
}
|
||||
|
||||
function get_taxonomy_name() {
|
||||
return $this->get_mapped_property('taxonomy_name');
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
function get_collection() {
|
||||
return new TainacanCollection( $this->get_mapped_property('collection') );
|
||||
}
|
||||
|
||||
// Setters
|
||||
|
||||
|
||||
function set_name($value) {
|
||||
return $this->set_mapped_property('name', $value);
|
||||
}
|
||||
|
||||
function set_parent($value) {
|
||||
return $this->set_mapped_property('parent', $value);
|
||||
}
|
||||
|
||||
|
||||
function set_description($value) {
|
||||
return $this->set_mapped_property('description', $value);
|
||||
}
|
||||
|
||||
function set_allow_insert($value) {
|
||||
return $this->set_mapped_property('allow_insert', $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param TainacanCollection
|
||||
*/
|
||||
function set_collection($value) {
|
||||
$ID = ($value instanceof TainacanCollection ) ? $value->get_id() : $value;
|
||||
return $this->set_mapped_property('collection', $ID);
|
||||
}
|
||||
}
|
|
@ -16,6 +16,7 @@ class Tainacan_Taxonomies {
|
|||
'name' => 'post_title',
|
||||
'parent' => 'parent',
|
||||
'description' => 'post_content',
|
||||
'taxonomy_name' => 'post_name',
|
||||
'allow_insert' => 'meta',
|
||||
'collection' => 'meta',
|
||||
];
|
||||
|
@ -107,7 +108,7 @@ class Tainacan_Taxonomies {
|
|||
if (!get_post_meta($id, self::DB_IDENTIFIER_META, true)) {
|
||||
$p = get_post($id);
|
||||
add_post_meta($id, self::DB_IDENTIFIER_META, $p->post_name);
|
||||
registerTainacanTaxonomy( $p->post_name );
|
||||
$this->registerTainacanTaxonomy( $p->post_name );
|
||||
}
|
||||
|
||||
return $id;
|
||||
|
@ -137,4 +138,24 @@ class Tainacan_Taxonomies {
|
|||
|
||||
register_taxonomy( $taxonomy_name, array( ), $args );
|
||||
}
|
||||
}
|
||||
|
||||
function get_taxonomy_by_id($id) {
|
||||
return new Tainacan_Taxonomy($id);
|
||||
}
|
||||
|
||||
function insert_term( $name, $taxonomy, $args = array() ){
|
||||
$term = wp_insert_term( $name, $taxonomy, $args );
|
||||
return $term['term_id'];
|
||||
}
|
||||
|
||||
function get_terms( $taxonomies, $args ){
|
||||
return get_terms( $taxonomies, $args );
|
||||
}
|
||||
|
||||
function get_term_by($field,$value,$taxonomy){
|
||||
return get_term_by($field,$value,$taxonomy);
|
||||
}
|
||||
}
|
||||
|
||||
global $Tainacan_Taxonomies;
|
||||
$Tainacan_Taxonomies = new Tainacan_Taxonomies();
|
|
@ -10,12 +10,14 @@ Version: 10.9.8.7.6.5.4
|
|||
include('classes/Repositories/Collections.php');
|
||||
include('classes/Repositories/Items.php');
|
||||
include('classes/Repositories/Metatadas.php');
|
||||
include('classes/Repositories/Taxonomies.php');
|
||||
include('classes/Entity.php');
|
||||
include('classes/Entities/Collection.php');
|
||||
include('classes/Entities/Item.php');
|
||||
include('classes/Entities/Metadata.php');
|
||||
include('classes/Entities/FieldType.php');
|
||||
include('classes/Entities/TextFieldType.php');
|
||||
include('classes/Entities/Taxonomy.php');
|
||||
include('classes/FieldTypes/FieldType.php');
|
||||
include('classes/FieldTypes/TextFieldType.php');
|
||||
|
||||
require_once('tainacan-api-controllers/class-tainacan-api.php');
|
||||
$tainacan_api = new Tainacan_API();
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
<?php
|
||||
/**
|
||||
* Class TestCollections
|
||||
*
|
||||
* @package Test_Tainacan
|
||||
*/
|
||||
|
||||
/**
|
||||
* Sample test case.
|
||||
*/
|
||||
class TestTaxonomies extends WP_UnitTestCase {
|
||||
|
||||
|
||||
/**
|
||||
* Teste da insercao de uma taxonomia simples
|
||||
*/
|
||||
function test_add() {
|
||||
global $Tainacan_Taxonomies;
|
||||
|
||||
$taxonomy = new Tainacan_Taxonomy();
|
||||
|
||||
//setando os valores na classe do tainacan
|
||||
$taxonomy->set_name('genero');
|
||||
$taxonomy->set_description('tipos de musica');
|
||||
$taxonomy->set_allow_insert(true);
|
||||
|
||||
//inserindo
|
||||
$taxonomy_id = $Tainacan_Taxonomies->insert($taxonomy);
|
||||
|
||||
//retorna a taxonomia
|
||||
$test = $Tainacan_Taxonomies->get_taxonomy_by_id($taxonomy_id);
|
||||
|
||||
$this->assertEquals( $test->get_name(), 'genero' );
|
||||
$this->assertEquals( $test->get_description(), 'tipos de musica' );
|
||||
$this->assertEquals( $test->get_allow_insert(), true );
|
||||
$this->assertEquals( taxonomy_exists( $test->get_taxonomy_name() ) , true );
|
||||
}
|
||||
|
||||
function test_add_term_taxonomy(){
|
||||
global $Tainacan_Taxonomies;
|
||||
$taxonomy = new Tainacan_Taxonomy();
|
||||
|
||||
//setando os valores na classe do tainacan
|
||||
$taxonomy->set_name('genero');
|
||||
|
||||
//insere a taxonomia
|
||||
$taxonomy_id = $Tainacan_Taxonomies->insert($taxonomy);
|
||||
|
||||
//retorna a taxonomia
|
||||
$taxonomy_test = $Tainacan_Taxonomies->get_taxonomy_by_id($taxonomy_id);
|
||||
|
||||
//insere um termo na taxonmia
|
||||
$term_id = $Tainacan_Taxonomies->insert_term('Rock', $taxonomy_test->get_taxonomy_name());
|
||||
|
||||
//retorna o termo
|
||||
$term = $Tainacan_Taxonomies->get_term_by('id', $term_id, $taxonomy_test->get_taxonomy_name());
|
||||
|
||||
$this->assertEquals( $term->name, 'Rock' );
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue