Index: tests/phpunit/data/languages/ja_JP.mo
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: tests/phpunit/data/languages/ja_JP.mo
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: tests/phpunit/data/languages/ja_JP.po
===================================================================
--- tests/phpunit/data/languages/ja_JP.po	(nonexistent)
+++ tests/phpunit/data/languages/ja_JP.po	(working copy)
@@ -0,0 +1,42 @@
+# Translation of 5.0.x in Japanese
+# This file is distributed under the same license as the 4.6.x package.
+msgid ""
+msgstr ""
+"PO-Revision-Date: 2018-04-21 18:27+0900\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Poedit 1.8.10\n"
+"Project-Id-Version: 5.0.x\n"
+"Language: ja_JP\n"
+
+#. translators: Translate this to the correct language tag for your locale, see
+#. https://www.w3.org/International/articles/language-tags/ for reference. Do
+#. not translate into your own language.
+#: wp-includes/general-template.php:716
+msgid "html_lang_attribute"
+msgstr "ja"
+
+#. translators: 'rtl' or 'ltr'. This sets the text direction for WordPress.
+#: wp-includes/class-wp-locale.php:223
+msgctxt "text direction"
+msgid "ltr"
+msgstr "ltr"
+
+#. translators: $dec_point argument for https://secure.php.net/number_format,
+#. default is .
+#: wp-includes/class-wp-locale.php:215
+msgid "number_format_decimal_point"
+msgstr "number_format_decimal_point"
+
+#. translators: $thousands_sep argument for
+#. https://secure.php.net/number_format, default is ,
+#: wp-includes/class-wp-locale.php:202
+msgid "number_format_thousands_sep"
+msgstr "number_format_thousands_sep"
+
+#. translators: %s: Plugin name and version
+#: wp-includes/script-loader.php:620
+msgid "Update %s now"
+msgstr "今すぐ %s を更新"
Index: tests/phpunit/tests/db.php
===================================================================
--- tests/phpunit/tests/db.php	(revision 42995)
+++ tests/phpunit/tests/db.php	(working copy)
@@ -90,7 +90,7 @@
 		$current_locales = explode( ';', setlocale( LC_ALL, 0 ) );
 
 		// Switch to Russian
-		$flag = setlocale( LC_ALL, 'ru_RU.utf8', 'rus', 'fr_FR.utf8', 'fr_FR', 'de_DE.utf8', 'de_DE', 'es_ES.utf8', 'es_ES' );
+		$flag = setlocale( LC_ALL, 'ru_RU.utf8', 'rus', 'fr_FR.utf8', 'fr_FR', 'de_DE.utf8', 'de_DE', 'es_ES.utf8', 'es_ES', 'ja_JP.utf8', 'ja_JP' );
 		if ( false === $flag ) {
 			$this->markTestSkipped( 'No European languages available for testing' );
 		}
Index: tests/phpunit/tests/formatting/BlogInfo.php
===================================================================
--- tests/phpunit/tests/formatting/BlogInfo.php	(revision 42995)
+++ tests/phpunit/tests/formatting/BlogInfo.php	(working copy)
@@ -29,6 +29,7 @@
 			array( 'de_DE_formal', 'de-DE-formal' ),
 			array( 'oci', 'oci' ),
 			array( 'pt_PT_ao1990', 'pt-PT-ao1990' ),
+			array( 'ja_JP', 'ja-JP' ),
 		);
 	}
 
Index: tests/phpunit/tests/l10n.php
===================================================================
--- tests/phpunit/tests/l10n.php	(revision 42995)
+++ tests/phpunit/tests/l10n.php	(working copy)
@@ -53,7 +53,7 @@
 		$this->assertEmpty( $array );
 
 		$array = get_available_languages( DIR_TESTDATA . '/languages/' );
-		$this->assertEquals( array( 'de_DE', 'en_GB', 'es_ES' ), $array );
+		$this->assertEquals( array( 'de_DE', 'en_GB', 'es_ES', 'ja_JP' ), $array );
 	}
 
 	/**
@@ -97,6 +97,7 @@
 		$this->assertContains( '<option value="" lang="en" data-installed="1">English (United States)</option>', $actual );
 		$this->assertContains( '<option value="de_DE" lang="de" selected=\'selected\' data-installed="1">Deutsch</option>', $actual );
 		$this->assertContains( '<option value="it_IT" lang="it">Italiano</option>', $actual );
+		$this->assertContains( '<option value="ja_JP" lang="ja">日本語</option>', $actual );
 	}
 
 	/**
@@ -120,6 +121,7 @@
 		$this->assertContains( '<option value="" lang="en" data-installed="1">English (United States)</option>', $actual );
 		$this->assertContains( '<option value="de_DE" lang="de" selected=\'selected\' data-installed="1">Deutsch</option>', $actual );
 		$this->assertContains( '<option value="it_IT" lang="it">Italiano</option>', $actual );
+		$this->assertContains( '<option value="ja_JP" lang="ja">日本語</option>', $actual );
 	}
 
 	/**
@@ -141,9 +143,56 @@
 		$this->assertContains( '<option value="" lang="en" data-installed="1" selected=\'selected\'>English (United States)</option>', $actual );
 		$this->assertContains( '<option value="de_DE" lang="de" data-installed="1">Deutsch</option>', $actual );
 		$this->assertContains( '<option value="it_IT" lang="it">Italiano</option>', $actual );
+		$this->assertContains( '<option value="ja_JP" lang="ja">日本語</option>', $actual );
 	}
 
 	/**
+	 * Add site default language to ja_JP in dropdown
+	 */
+	function test_wp_dropdown_languages_site_default_ja_JP() {
+		$args   = array(
+			'id'                       => 'foo',
+			'name'                     => 'bar',
+			'languages'                => array( 'ja_JP' ),
+			'translations'             => $this->wp_dropdown_languages_filter(),
+			'selected'                 => 'ja_JP',
+			'echo'                     => false,
+			'show_option_site_default' => true,
+		);
+		$actual = wp_dropdown_languages( $args );
+
+		$this->assertContains( 'id="foo"', $actual );
+		$this->assertContains( 'name="bar"', $actual );
+		$this->assertContains( '<option value="site-default" data-installed="1">Site Default</option>', $actual );
+		$this->assertContains( '<option value="" lang="en" data-installed="1">English (United States)</option>', $actual );
+		$this->assertContains( '<option value="de_DE" lang="de">Deutsch</option>', $actual );
+		$this->assertContains( '<option value="it_IT" lang="it">Italiano</option>', $actual );
+		$this->assertContains( '<option value="ja_JP" lang="ja" selected=\'selected\' data-installed="1">日本語</option>', $actual );
+	}
+
+	/**
+	 * Select dropdown language from de_DE to ja_JP
+	 */
+	function test_wp_dropdown_languages_ja_JP_selected() {
+		$args   = array(
+			'id'           => 'foo',
+			'name'         => 'bar',
+			'languages'    => array( 'de_DE' ),
+			'translations' => $this->wp_dropdown_languages_filter(),
+			'selected'     => 'ja_JP',
+			'echo'         => false,
+		);
+		$actual = wp_dropdown_languages( $args );
+
+		$this->assertContains( 'id="foo"', $actual );
+		$this->assertContains( 'name="bar"', $actual );
+		$this->assertContains( '<option value="" lang="en" data-installed="1">English (United States)</option>', $actual );
+		$this->assertContains( '<option value="de_DE" lang="de" data-installed="1">Deutsch</option>', $actual );
+		$this->assertContains( '<option value="it_IT" lang="it">Italiano</option>', $actual );
+		$this->assertContains( '<option value="ja_JP" lang="ja" selected=\'selected\'>日本語</option>', $actual );
+	}
+
+	/**
 	 * We don't want to call the API when testing.
 	 *
 	 * @return array
@@ -160,6 +209,11 @@
 				'native_name' => 'Italiano',
 				'iso'         => array( 'it', 'ita' ),
 			),
+			'ja_JP' => array(
+				'language'    => 'ja_JP',
+				'native_name' => '日本語',
+				'iso'         => array( 'ja' ),
+			),
 		);
 	}
 
Index: tests/qunit/fixtures/wp-api-generated.js
===================================================================
--- tests/qunit/fixtures/wp-api-generated.js	(revision 42995)
+++ tests/qunit/fixtures/wp-api-generated.js	(working copy)
@@ -2563,7 +2563,8 @@
                                 "en_US",
                                 "de_DE",
                                 "en_GB",
-                                "es_ES"
+                                "es_ES",
+                                "ja_JP"
                             ],
                             "description": "Locale for the user.",
                             "type": "string"
@@ -2690,7 +2691,8 @@
                                 "en_US",
                                 "de_DE",
                                 "en_GB",
-                                "es_ES"
+                                "es_ES",
+                                "ja_JP"
                             ],
                             "description": "Locale for the user.",
                             "type": "string"
@@ -2827,7 +2829,8 @@
                                 "en_US",
                                 "de_DE",
                                 "en_GB",
-                                "es_ES"
+                                "es_ES",
+                                "ja_JP"
                             ],
                             "description": "Locale for the user.",
                             "type": "string"
