|
|
|
using UnityEngine;
|
|
|
|
using System.Collections;
|
|
|
|
|
|
|
|
namespace Fungus
|
|
|
|
{
|
|
|
|
|
|
|
|
public class TestInvoke : MonoBehaviour
|
|
|
|
{
|
|
|
|
public Flowchart flowchart;
|
|
|
|
|
|
|
|
public int passCount;
|
|
|
|
|
|
|
|
public void TestCall()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void TestCall(bool boolParam)
|
|
|
|
{
|
|
|
|
if (boolParam)
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public void TestCall(int intParam)
|
|
|
|
{
|
|
|
|
if (intParam == 10)
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public void TestCall(float floatParam)
|
|
|
|
{
|
|
|
|
if (floatParam == 5.2f)
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public void TestCall(string stringParam)
|
|
|
|
{
|
|
|
|
if (stringParam == "ok")
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public bool TestCall(bool boolParam, int intParam, float floatParam, string stringParam)
|
|
|
|
{
|
|
|
|
if (boolParam && intParam == 10 && floatParam == 5.2f && stringParam == "ok")
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int TestReturnInteger()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
return 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
public float TestReturnFloat()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
return 22.1f;
|
|
|
|
}
|
|
|
|
|
|
|
|
public string TestReturnString()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
return "a string";
|
|
|
|
}
|
|
|
|
|
|
|
|
// Test the Call Method command
|
|
|
|
public void TestCallMethod()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void DelayedInvokeEvent()
|
|
|
|
{
|
|
|
|
passCount++;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void CheckTestResult()
|
|
|
|
{
|
|
|
|
if (flowchart == null)
|
|
|
|
{
|
|
|
|
IntegrationTest.Fail("Flowchart object not selected");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Check Fungus variables are populated with expected values
|
|
|
|
if (flowchart.GetBooleanVariable("BoolVar") != true ||
|
|
|
|
flowchart.GetIntegerVariable("IntVar") != 5 ||
|
|
|
|
flowchart.GetFloatVariable("FloatVar") != 22.1f ||
|
|
|
|
flowchart.GetStringVariable("StringVar") != "a string")
|
|
|
|
{
|
|
|
|
IntegrationTest.Fail("Fungus variables do not match expected values");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Check the right number of methods were invoked successfully
|
|
|
|
if (passCount == 11)
|
|
|
|
{
|
|
|
|
IntegrationTest.Pass();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
IntegrationTest.Fail("A method did not get invoked or parameter was incorrect");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|