Patrzę na PHPUnit i dalej mnie zastanawiasz. Czy lub nie PHPUnit obsługuje int. 1's i 0's jako boolean? W moich obecnych testach nie ma.PHPUnit potwierdzić True One (1)
Przykład: $this->assertTrue(preg_match('/asdf/', 'asdf'));
W moich testów nie powiedzie się, jak preg_match() jest zwrócenie int 1 lub 0 i tylko bool false, jeśli jest błąd.
Podejmuję się następujących prac, oczywiście, ponieważ porównania zawsze zwracają bool. $this->assertTrue(preg_match('/asdf/', 'asdf') === 1);
Czy brakuje mi czegoś w mojej preg_match, czy też mojego stwierdzenia, aby to zrobić ... mniej surowe?
EDYTOWANIE: Czy assertTrue wymaga dopasowania typów? Czy istnieje jakiś sposób, aby uczynić twierdzenie mniej surowym?
to robi” t odpowiedzieć na moje pytanie, ale zdecydowanie warty uwagi. Dziękuję, zauważyłem. – alairock
'assertTrue' sprawdza prawdziwą" prawdziwą "wartość, a nie" prawdę "jako" 1 ". – Sven
Mówiąc dokładniej, rozumiem, co mówisz: 'asertTrue' w PHPUnit robi porównanie" potrójnie równe ", a nie" podwójnie równe "porównanie. (Zobacz 'var_dump (1 == true);' i 'var_dump (1 === true);" Pierwszy powraca true, a drugi wraca false, ponieważ "triple-equals" również pasują do typu. pytanie. Będę edytować oryginał tak, by był konkretny. – alairock