Einige der Code, den ich zu Test bin versucht, die Plattform erkennt, zu verwenden, zB:Mocking Plattform Erkennung in Jest und Reagieren india
import { Platform } from 'react-native';
...
if (Platform.OS === 'android') {
...
} else {
...
}
Gibt es eine vernünftige Möglichkeit, dies mit Jest und/oder etwas anderes zu verspotten , also kann ich beide Zweige in einem Testlauf testen?
Oder ist die intelligente Art, es zu entkoppeln und die Plattform in z. B. eine Kontextvariable zu setzen? Es fühlt sich zwar immer nach Restrukturierungscode an, um das Testen zu erleichtern, ist aber etwas wie ein Betrüger.
Macht es das nicht dauerhaft? d. h., wird das nicht bedeuten, dass ich in einem "afterEach" "uncock" machen muss? Ist das möglich? –
Hmm, nein, das funktioniert nicht. 'jest.mock' wird gehisst, also ist es nicht in' beforeEach', also läuft es vor allem. Eine praktikable Option scheint das Affe-Patchen von 'RN.Platform.OS' vor einem Test zu sein. Oder Plattform in den Kontext entkoppeln. –