Skip to content

Commit 4cec5b0

Browse files
author
He, Joan(johe)
committed
Merge pull request #248 from magento-extensibility/MAGETWO-22669-Change-Table-Type-To-InnoDB
[Extensibility] Sprint Bug Fixes
2 parents a5d01de + a905e5f commit 4cec5b0

File tree

5 files changed

+60
-15
lines changed

5 files changed

+60
-15
lines changed

Diff for: app/code/Magento/Integration/Setup/InstallSchema.php

-3
Original file line numberDiff line numberDiff line change
@@ -268,9 +268,6 @@ public function install(SchemaSetupInterface $setup, ModuleContextInterface $con
268268
\Magento\Framework\DB\Ddl\Table::ACTION_CASCADE
269269
)->setComment(
270270
'OAuth Nonce'
271-
)->setOption(
272-
'type',
273-
'MyISAM'
274271
);
275272
$installer->getConnection()->createTable($table);
276273

Diff for: dev/tests/api-functional/testsuite/Magento/Quote/Api/CartRepositoryTest.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -163,8 +163,8 @@ public function testGetList()
163163
->setValue($cart->getSubtotal())
164164
->create();
165165

166-
$yesterdayDate = (new \DateTime())->sub(new \DateInterval('P1D'))->format('Y-m-d');
167-
$tomorrowDate = (new \DateTime())->add(new \DateInterval('P1D'))->format('Y-m-d');
166+
$yesterdayDate = (new \DateTime($cart->getCreatedAt()))->sub(new \DateInterval('P1D'))->format('Y-m-d');
167+
$tomorrowDate = (new \DateTime($cart->getCreatedAt()))->add(new \DateInterval('P1D'))->format('Y-m-d');
168168
$minCreatedAtFilter = $this->filterBuilder->setField('created_at')
169169
->setConditionType('gteq')
170170
->setValue($yesterdayDate)

Diff for: lib/internal/Magento/Framework/Phrase.php

+7-2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
use Zend\Stdlib\JsonSerializable;
1111
use Magento\Framework\Phrase\RendererInterface;
12+
use Magento\Framework\Phrase\Renderer\Placeholder;
1213

1314
class Phrase implements JsonSerializable
1415
{
@@ -51,7 +52,11 @@ public static function setRenderer(RendererInterface $renderer)
5152
*/
5253
public static function getRenderer()
5354
{
54-
return self::$renderer;
55+
if (self::$renderer) {
56+
return self::$renderer;
57+
} else {
58+
self::$renderer = new \Magento\Framework\Phrase\Renderer\Placeholder();
59+
}
5560
}
5661

5762
/**
@@ -93,7 +98,7 @@ public function getArguments()
9398
*/
9499
public function render()
95100
{
96-
return self::$renderer ? self::$renderer->render([$this->text], $this->arguments) : $this->text;
101+
return self::getRenderer() ? self::getRenderer()->render([$this->text], $this->arguments) : $this->text;
97102
}
98103

99104
/**

Diff for: lib/internal/Magento/Framework/Phrase/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
# Phase
1+
# Phrase
22

3-
Class *\Magento\Framework\Phrase* calls renderer to make the translation of the text. **Phase** provides *RedererInterface* and a few renderers to support different kinds of needs of translation of the text. Here are list of renderers in this library:
3+
Class *\Magento\Framework\Phrase* calls renderer to make the translation of the text. **Phrase** provides *RendererInterface* and a few renderers to support different kinds of needs of translation of the text. Here are list of renderers in this library:
44

5+
* Placeholder render - it replaces placeholders with parameters for substitution. It is the default render if none is set for the Phrase.
56
* Translate render - it is a base renderer that implements text translations.
67
* Inline render - it adds inline translate part to text translation and returns the strings by a template.
7-
* Placeholder render - it replaces placeholders with parameters for substitution.
88
* Composite render - it can have several renderers, calls each renderer for processing the text. Array of renderer class names pass into composite render constructor as a parameter.

Diff for: lib/internal/Magento/Framework/Test/Unit/PhraseTest.php

+48-5
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ class PhraseTest extends \PHPUnit_Framework_TestCase
1919
*/
2020
protected $rendererMock;
2121

22+
/**
23+
* @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager
24+
*/
25+
protected $objectManager;
26+
2227
/**
2328
* SetUp method
2429
*
@@ -29,6 +34,7 @@ protected function setUp()
2934
$this->defaultRenderer = Phrase::getRenderer();
3035
$this->rendererMock = $this->getMockBuilder('Magento\Framework\Phrase\RendererInterface')
3136
->getMock();
37+
$this->objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
3238
}
3339

3440
/**
@@ -51,7 +57,10 @@ public function testRendering()
5157
$text = 'some text';
5258
$arguments = ['arg1', 'arg2'];
5359
$result = 'rendered text';
54-
$phrase = new Phrase($text, $arguments);
60+
$phrase = $this->objectManager->getObject('Magento\Framework\Phrase', [
61+
'text' => $text,
62+
'arguments' => $arguments,
63+
]);
5564
Phrase::setRenderer($this->rendererMock);
5665

5766
$this->rendererMock->expects($this->once())
@@ -72,7 +81,9 @@ public function testDefersRendering()
7281
$this->rendererMock->expects($this->never())
7382
->method('render');
7483

75-
new Phrase('some text');
84+
$this->objectManager->getObject('Magento\Framework\Phrase', [
85+
'text' => 'some text',
86+
]);
7687
}
7788

7889
/**
@@ -85,7 +96,10 @@ public function testThatToStringIsAliasToRender()
8596
$text = 'some text';
8697
$arguments = ['arg1', 'arg2'];
8798
$result = 'rendered text';
88-
$phrase = new Phrase($text, $arguments);
99+
$phrase = $this->objectManager->getObject('Magento\Framework\Phrase', [
100+
'text' => $text,
101+
'arguments' => $arguments,
102+
]);
89103
Phrase::setRenderer($this->rendererMock);
90104

91105
$this->rendererMock->expects($this->once())
@@ -105,6 +119,9 @@ public function testGetText()
105119
{
106120
$text = 'some text';
107121
$phrase = new Phrase($text);
122+
$phrase = $this->objectManager->getObject('Magento\Framework\Phrase', [
123+
'text' => $text,
124+
]);
108125

109126
$this->assertEquals($text, $phrase->getText());
110127
}
@@ -118,10 +135,36 @@ public function testGetArguments()
118135
{
119136
$text = 'some text';
120137
$arguments = ['arg1', 'arg2'];
121-
$phrase1 = new Phrase($text);
122-
$phrase2 = new Phrase($text, $arguments);
138+
$phrase1 = $this->objectManager->getObject('Magento\Framework\Phrase', [
139+
'text' => $text,
140+
]);
141+
$phrase2 = $this->objectManager->getObject('Magento\Framework\Phrase', [
142+
'text' => $text,
143+
'arguments' => $arguments,
144+
]);
123145

124146
$this->assertEquals([], $phrase1->getArguments());
125147
$this->assertEquals($arguments, $phrase2->getArguments());
126148
}
149+
150+
/**
151+
* Test default rendering
152+
*
153+
* @return void
154+
*/
155+
public function testDefaultRendering()
156+
{
157+
$text = 'parameter1 is replaced by %1 parameter2 is replaced by %2';
158+
$arguments = ['arg1', 'arg2'];
159+
$result = 'parameter1 is replaced by arg1 parameter2 is replaced by arg2';
160+
$phrase = $this->objectManager->getObject('Magento\Framework\Phrase', [
161+
'text' => $text,
162+
'arguments' => $arguments,
163+
]);
164+
165+
$this->assertEquals($text, $phrase->getText());
166+
$this->assertEquals($arguments, $phrase->getArguments());
167+
$this->assertTrue($phrase->getRenderer() instanceof \Magento\Framework\Phrase\Renderer\Placeholder);
168+
$this->assertEquals($result, $phrase->render());
169+
}
127170
}

0 commit comments

Comments
 (0)