Taxonomy: Introduce is_taxonomy_viewable().

This utility function allows for easy detection whether terms for a taxonomy are considered publicly viewable.

Props andizer.
Fixes #44466.


git-svn-id: https://develop.svn.wordpress.org/trunk@43386 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Felix Arntz
2018-07-03 10:28:39 +00:00
parent 8e96abbcc2
commit d3a198df34
4 changed files with 65 additions and 2 deletions
@@ -0,0 +1,44 @@
<?php
/**
* @group taxonomy
*/
class Tests_Taxonomy_IsTaxonomyViewable extends WP_UnitTestCase {
public function setUp() {
parent::setUp();
register_post_type( 'wptests_pt' );
register_taxonomy( 'wptests_tax_viewable', 'wptests_pt', array( 'publicly_queryable' => true ) );
register_taxonomy( 'wptests_tax_non_viewable', 'wptests_pt', array( 'publicly_queryable' => false ) );
}
/**
* @ticket 44466
*/
public function test_is_taxonomy_viewable_for_querable_taxonomy() {
$this->assertTrue( is_taxonomy_viewable( 'wptests_tax_viewable' ) );
}
/**
* @ticket 44466
*/
public function test_is_taxonomy_viewable_for_non_querable_taxonomy() {
$this->assertFalse( is_taxonomy_viewable( 'wptests_tax_non_viewable' ) );
}
/**
* @ticket 44466
*/
public function test_is_taxonomy_viewable_for_non_existing_taxonomy() {
$this->assertFalse( is_taxonomy_viewable( 'wptests_tax_non_existing' ) );
}
/**
* @ticket 44466
*/
public function test_is_taxonomy_viewable_with_object_given() {
$taxonomy = get_taxonomy( 'wptests_tax_viewable' );
$this->assertTrue( is_taxonomy_viewable( $taxonomy ) );
}
}