mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-16 07:11:19 +08:00
Fixes #16910: Fix messages sorting on extract
This commit is contained in:

committed by
Alexander Makarov

parent
d07e286dbd
commit
c162bd7ae7
@ -3,6 +3,7 @@ Yii Framework 2 Change Log
|
|||||||
|
|
||||||
2.0.16 under development
|
2.0.16 under development
|
||||||
------------------------
|
------------------------
|
||||||
|
- Bug #16910: Fix messages sorting on extract (Groonya)
|
||||||
|
|
||||||
- Bug #15683: Fixed file as array uploading in MultipartFormDataParser (Groonya)
|
- Bug #15683: Fixed file as array uploading in MultipartFormDataParser (Groonya)
|
||||||
- Bug #16822: Create config dir recursively in message/config (Groonya)
|
- Bug #16822: Create config dir recursively in message/config (Groonya)
|
||||||
|
@ -722,7 +722,7 @@ EOD;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$merged = array_merge($todo, $merged);
|
$merged = array_merge($merged, $todo);
|
||||||
if ($sort) {
|
if ($sort) {
|
||||||
ksort($merged);
|
ksort($merged);
|
||||||
}
|
}
|
||||||
@ -825,7 +825,7 @@ EOD;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$merged = array_merge($todos, $merged);
|
$merged = array_merge($merged, $todos);
|
||||||
if ($sort) {
|
if ($sort) {
|
||||||
ksort($merged);
|
ksort($merged);
|
||||||
}
|
}
|
||||||
|
@ -592,6 +592,35 @@ abstract class BaseMessageControllerTest extends TestCase
|
|||||||
$this->assertArrayHasKey($positiveKey1, $messages);
|
$this->assertArrayHasKey($positiveKey1, $messages);
|
||||||
$this->assertArrayHasKey($positiveKey2, $messages);
|
$this->assertArrayHasKey($positiveKey2, $messages);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testMessagesSorting()
|
||||||
|
{
|
||||||
|
$category = 'test_order_category';
|
||||||
|
$key1 = 'key1';
|
||||||
|
$key2 = 'key2';
|
||||||
|
|
||||||
|
$sourceFileContent = "Yii::t('{$category}', '{$key1}');Yii::t('{$category}', '{$key2}');";
|
||||||
|
$this->createSourceFile($sourceFileContent);
|
||||||
|
|
||||||
|
$this->saveMessages([$key2 => 'already translated'], $category);
|
||||||
|
|
||||||
|
$this->saveConfigFile($this->getConfig([
|
||||||
|
'sort' => true,
|
||||||
|
]));
|
||||||
|
$this->runMessageControllerAction('extract', [$this->configFileName]);
|
||||||
|
|
||||||
|
$keys = array_keys($this->loadMessages($category));
|
||||||
|
$this->assertEquals([$key1, $key2], $keys, "The order of messages should be '{$key1}, {$key2}' when sort equals true");
|
||||||
|
|
||||||
|
|
||||||
|
$this->saveMessages([$key2 => 'already translated'], $category);
|
||||||
|
$this->saveConfigFile($this->getConfig([
|
||||||
|
'sort' => false,
|
||||||
|
]));
|
||||||
|
$this->runMessageControllerAction('extract', [$this->configFileName]);
|
||||||
|
$keys = array_keys($this->loadMessages($category));
|
||||||
|
$this->assertEquals([$key2, $key1], $keys, "The order of messages should be '{$key2}, {$key1}' when sort equals false and {$key1} was added later");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class MessageControllerMock extends MessageController
|
class MessageControllerMock extends MessageController
|
||||||
|
@ -186,4 +186,11 @@ class DbMessageControllerTest extends BaseMessageControllerTest
|
|||||||
$this->assertArrayHasKey($obsoleteMessage, $messages, "Obsolete message should not be removed. Command output:\n\n" . $out);
|
$this->assertArrayHasKey($obsoleteMessage, $messages, "Obsolete message should not be removed. Command output:\n\n" . $out);
|
||||||
$this->assertEquals($obsoleteTranslation, $messages[$obsoleteMessage], "Obsolete message was not marked properly. Command output:\n\n" . $out);
|
$this->assertEquals($obsoleteTranslation, $messages[$obsoleteMessage], "Obsolete message was not marked properly. Command output:\n\n" . $out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testMessagesSorting()
|
||||||
|
{
|
||||||
|
$this->markTestSkipped('There\'s no need to order messages for database');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user