Porovnání dvou polí se neshoduje
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Michal Hlávka
- Člen | 190
Zdravíčko,
porovnávám dvě pole, kde jedno z nich je řádek v databázi.
$expected = ['id' => 11, 'from_currency_id' => 2.0, 'to_currency_id' => 3.0, 'rate' => 0.7111, 'last_update' => new \Nette\Utils\DateTime('2015-06-23 12:37:21')];
$result = $exchangeRateRepository->getRate(2, 3);
activeRowToArray($result);
Assert::same($expected, $result);
Soubor actual
array(
'id' => 11,
'from_currency_id' => 2.0,
'to_currency_id' => 3.0,
'rate' => 0.7111,
'last_update' => Nette\Utils\DateTime::__set_state(array(
'date' => '2015-06-23 12:37:21.000000',
'timezone_type' => 3,
'timezone' => 'Europe/Prague',
)),
)
Soubor expected
array(
'id' => 11,
'from_currency_id' => 2.0,
'to_currency_id' => 3.0,
'rate' => 0.7111,
'last_update' => Nette\Utils\DateTime::__set_state(array(
'date' => '2015-06-23 12:37:21.000000',
'timezone_type' => 3,
'timezone' => 'Europe/Prague',
)),
)
Chybový hláška z testeru
http://i.imgur.com/lpvtvaZ.png
Jsem už trochu bezradnej, tak uvítám jakékoliv rady / zkušenosti :-) Děkuji předem.
- iguana007
- Člen | 970
Nemělo by to být takhle?
$expected = ['id' => 11, 'from_currency_id' => 2.0, 'to_currency_id' => 3.0, 'rate' => 0.7111, 'last_update' => new \Nette\Utils\DateTime('2015-06-23 12:37:21')];
$result = $exchangeRateRepository->getRate(2, 3);
$result = activeRowToArray($result);
Assert::same($expected, $result);
- David Matějka
- Moderator | 6445
pouzij equal
misto same
, u same
museji
byt ty data identicka, to u objektu znamena stejna instance, takze ti to
failuje na tom datetime
- Michal Hlávka
- Člen | 190
@iguana007 nene to je správně, ale děkuji za odpověď. :-)
activeRowToArray(&$row)
@DavidMatějka mockrát děkuji.