Index: wp-testcase/test_includes_taxonomy.php
===================================================================
--- wp-testcase/test_includes_taxonomy.php	(revision 744)
+++ wp-testcase/test_includes_taxonomy.php	(working copy)
@@ -78,7 +78,43 @@
 		// clean up
 		unset($GLOBALS['wp_taxonomies'][$tax]);
 	}
+	
+	function test_get_taxonomies() {
+		$this->knownWPBug( 20929 );
 
+		// make up a new taxonomy name, and ensure it's unused
+		$tax = rand_str();
+		$this->assertFalse( taxonomy_exists( $tax . '_taxonomy' ) );
+
+		// Register the new taxonomy
+		$args = array( $tax . '_taxonomy' => true, 'hierarchical' => 0, 'rewrite' => array( 'slug' ), );
+		register_taxonomy( $tax . '_taxonomy', array( $tax . '_post_type' ), $args );
+		$this->assertTrue( taxonomy_exists( $tax . '_taxonomy' ) );
+		
+		// Get the taxonomy using the name as the key
+		// If ticket 20929 isn't fixed, this will produce a notice
+		// If you're not running with -d, force notices on
+		if ( !defined( 'WP_DEBUG' ) || !WP_DEBUG ) {
+			$err = error_reporting();
+			error_reporting( $err | E_NOTICE );
+		}
+		$new_tax = get_taxonomies( array( $tax . '_taxonomy' => true ) );
+		if ( !defined( 'WP_DEBUG' ) || !WP_DEBUG ) {
+			error_reporting( $err );
+		}
+
+		// Get back exactly 1 match
+		$this->assertEquals( 1, count( $new_tax ) );
+		
+		// Key and val should match the random tax name
+		list($key, $val) = each( $new_tax );
+		$this->assertEquals( $tax . '_taxonomy', $key );
+		$this->assertEquals( $tax . '_taxonomy', $val );
+
+		// clean up
+		unset( $GLOBALS['wp_taxonomies'][$tax . '_taxnomy'] );
+	}
+
 	function test_register_hierarchical_taxonomy() {
 
 		// make up a new taxonomy name, and ensure it's unused
