Move YGLogger into YGConfig and associate YGNodeRef with log events
Summary: Moves the `YGLogger` into `YGConfig` and pass the `YGNodeRef` into the logger to be able to associate the log messages and assertions with the specific node. Tackles facebook/yoga#530 and facebook/yoga#446 Closes https://github.com/facebook/yoga/pull/531 Reviewed By: astreet Differential Revision: D4970149 Pulled By: emilsjolander fbshipit-source-id: b7fcdaa273143ea2fa35861620b2e4d79f04f0af
This commit is contained in:
committed by
Facebook Github Bot
parent
40eba60cf5
commit
91230ae177
@@ -69,6 +69,7 @@ namespace Facebook.Yoga
|
||||
Assert.AreEqual(YogaFlexDirection.Row, node1.FlexDirection);
|
||||
}
|
||||
|
||||
#if !UNITY_5_4_OR_NEWER
|
||||
public static void ForceGC()
|
||||
{
|
||||
YogaNodeTest.ForceGC();
|
||||
@@ -132,5 +133,6 @@ namespace Facebook.Yoga
|
||||
|
||||
return node;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@@ -248,6 +248,26 @@ namespace Facebook.Yoga
|
||||
Assert.AreEqual(0, child2.LayoutY);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestPrintOneNode()
|
||||
{
|
||||
YogaNode node = new YogaNode();
|
||||
node.Width = 100;
|
||||
node.Height = 120;
|
||||
node.CalculateLayout();
|
||||
Assert.AreEqual("<div layout=\"width: 100; height: 120; top: 0; left: 0;\" style=\"width: 100px; height: 120px; \" ></div>", node.Print());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestPrintWithLogger()
|
||||
{
|
||||
YogaNode node = new YogaNode(new YogaConfig{Logger = (c, n, l, m) => {}});
|
||||
node.Width = 110;
|
||||
node.Height = 105;
|
||||
node.CalculateLayout();
|
||||
Assert.AreEqual("<div layout=\"width: 110; height: 105; top: 0; left: 0;\" style=\"width: 110px; height: 105px; \" ></div>", node.Print());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestPrint()
|
||||
{
|
||||
@@ -309,9 +329,10 @@ namespace Facebook.Yoga
|
||||
Assert.AreEqual(90.Pt(), node4.MaxHeight);
|
||||
}
|
||||
|
||||
#if !UNITY_5_4_OR_NEWER
|
||||
public static void ForceGC()
|
||||
{
|
||||
GC.Collect(GC.MaxGeneration);
|
||||
GC.Collect();
|
||||
GC.WaitForPendingFinalizers();
|
||||
}
|
||||
|
||||
@@ -438,6 +459,7 @@ namespace Facebook.Yoga
|
||||
return MeasureOutput.Make(120, 130);
|
||||
});
|
||||
}
|
||||
#endif
|
||||
|
||||
[Test]
|
||||
public void TestLayoutMargin() {
|
||||
|
@@ -24,5 +24,5 @@ ROOT=`buck root|tail -1`
|
||||
DYLIB=`buck targets --show-output $TARGET|tail -1|awk '{print $2}'`
|
||||
cp $ROOT/$DYLIB .
|
||||
|
||||
mcs -debug -t:library -r:$NUNIT/nunit.framework.dll -out:YogaTest.dll *.cs ../../../csharp/Facebook.Yoga/*cs
|
||||
mcs -debug -d:YOGA_ENABLE_GC_TEST -t:library -r:$NUNIT/nunit.framework.dll -out:YogaTest.dll *.cs ../../../csharp/Facebook.Yoga/*cs
|
||||
MONO_PATH=$NUNIT mono --arch=64 --debug $NUNIT/nunit-console.exe YogaTest.dll
|
||||
|
Reference in New Issue
Block a user