diff --git a/java/com/facebook/yoga/YogaConfig.java b/java/com/facebook/yoga/YogaConfig.java index d44aec29..501a3cca 100644 --- a/java/com/facebook/yoga/YogaConfig.java +++ b/java/com/facebook/yoga/YogaConfig.java @@ -38,5 +38,7 @@ public abstract class YogaConfig { abstract long getNativePointer(); + public abstract void setUseVanillaJNI(boolean useVanillaJNI); + public abstract boolean useVanillaJNI(); } diff --git a/java/com/facebook/yoga/YogaConfigJNIBase.java b/java/com/facebook/yoga/YogaConfigJNIBase.java index ceda9595..423044de 100644 --- a/java/com/facebook/yoga/YogaConfigJNIBase.java +++ b/java/com/facebook/yoga/YogaConfigJNIBase.java @@ -99,6 +99,11 @@ public abstract class YogaConfigJNIBase extends YogaConfig { return mNativePointer; } + @Override + public void setUseVanillaJNI(boolean useVanillaJNI) { + this.useVanillaJNI = useVanillaJNI; + } + @Override public boolean useVanillaJNI() { return this.useVanillaJNI; diff --git a/java/tests/com/facebook/yoga/TestParametrization.java b/java/tests/com/facebook/yoga/TestParametrization.java index 0e20ddaf..e0b8730c 100644 --- a/java/tests/com/facebook/yoga/TestParametrization.java +++ b/java/tests/com/facebook/yoga/TestParametrization.java @@ -27,7 +27,25 @@ public class TestParametrization { return "JNI"; } }; - return Arrays.asList(nodeFactory); + + NodeFactory nodeFactoryUsingVanillaJNI = new NodeFactory() { + @Override + public YogaNode create() { + return YogaNodeFactory.create(true); + } + + @Override + public YogaNode create(YogaConfig config) { + config.setUseVanillaJNI(true); + return YogaNodeFactory.create(config); + } + + @Override + public String toString() { + return "VanillaJNI"; + } + }; + return Arrays.asList(nodeFactory, nodeFactoryUsingVanillaJNI); }