Index: tests/phpunit/tests/functions/wpIsNumericArray.php
===================================================================
--- tests/phpunit/tests/functions/wpIsNumericArray.php	(nonexistent)
+++ tests/phpunit/tests/functions/wpIsNumericArray.php	(working copy)
@@ -0,0 +1,65 @@
+<?php
+
+/**
+ * Tests wp_is_numeric_array function
+ *
+ * @since 5.2.0
+ *
+ * @group functions.php
+ */
+class Tests_Functions_wp_is_numeric_array extends WP_UnitTestCase {
+
+
+	/**
+	 * @dataProvider _wp_is_numeric_array_data
+	 *
+	 * @param array  $target_array The target/source array.
+	 * @param array $expected output
+	 */
+	public function test_wp_is_numeric_array( $target_array, $expected ) {
+
+		$this->assertSame( wp_is_numeric_array( $target_array ), $expected );
+	}
+
+
+	/**
+	 * data provider for unit test
+	 * List all the possible strings and a couple of in correct
+	 *
+	 * @return array
+	 */
+	public function _wp_is_numeric_array_data() {
+
+		$mock_object = new stdClass();
+		$mock_object->dd = '1';
+
+		return array(
+			array( array( 1 => 1 ), true ),
+			array( array( 1, 2, 3, 4, 5 ), true ),
+
+			array( array( '1' => 1 ), true ), // numeric strings are evaluated as int in array_keys()
+
+			array( array( '01' => 1 ), false ),
+			array( array( '1.0' => 1 ), false ),
+			array( array( 'one' => 1 ), false ),
+			array( array( 'key' => 'value' ), false ),
+
+			// only looks at the top level array
+			array(
+				array(
+					array( 'key' => 'value' ),
+					array( 2 => 2 ),
+				),
+				true ),
+			array(
+				array(
+					1 => array( 'key' => 'value' ),
+					2 => array( 2 => 2 ),
+				),
+				true ),
+
+			array( 'string noy array', false ),
+			array( $mock_object, false ),
+		);
+	}
+}
