UiThreadUtil.assertX should only throw in DEBUG mode
Summary: Turns out that `SoftAssertions.java` has always been a lie - it actually always throws exceptions. Migrate it to using `ReactSoftException`. This file hasn't been touched at all since it was originally open-sourced, besides codemods! Changelog: [Internal] Reviewed By: mdvacca Differential Revision: D18336020 fbshipit-source-id: cba3db25a9f9d61325dd3f7843e92e984ae56281
This commit is contained in:
Родитель
e885ddedb9
Коммит
b1b97b8b45
|
@ -20,26 +20,32 @@ public class SoftAssertions {
|
|||
/**
|
||||
* Throw {@link AssertionException} with a given message. Use this method surrounded with {@code
|
||||
* if} block with assert condition in case you plan to do string concatenation to produce the
|
||||
* message.
|
||||
* message. This logs an assertion with ReactSoftException, which decides whether or not to
|
||||
* actually throw.
|
||||
*/
|
||||
public static void assertUnreachable(String message) {
|
||||
throw new AssertionException(message);
|
||||
ReactSoftException.logSoftException("SoftAssertions", new AssertionException(message));
|
||||
}
|
||||
|
||||
/**
|
||||
* Asserts the given condition, throwing an {@link AssertionException} if the condition doesn't
|
||||
* hold.
|
||||
* hold. This logs an assertion with ReactSoftException, which decides whether or not to actually
|
||||
* throw.
|
||||
*/
|
||||
public static void assertCondition(boolean condition, String message) {
|
||||
if (!condition) {
|
||||
throw new AssertionException(message);
|
||||
ReactSoftException.logSoftException("SoftAssertions", new AssertionException(message));
|
||||
}
|
||||
}
|
||||
|
||||
/** Asserts that the given Object isn't null, throwing an {@link AssertionException} if it was. */
|
||||
/**
|
||||
* Asserts that the given Object isn't null, throwing an {@link AssertionException} if it was.
|
||||
* This logs an assertion with ReactSoftException, which decides whether or not to actually throw.
|
||||
*/
|
||||
public static <T> T assertNotNull(@Nullable T instance) {
|
||||
if (instance == null) {
|
||||
throw new AssertionException("Expected object to not be null!");
|
||||
ReactSoftException.logSoftException(
|
||||
"SoftAssertions", new AssertionException("Expected object to not be null!"));
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче