Пример #1
0
        static TestAndBuildMenu()
        {
            testApi = ScriptableObject.CreateInstance <TestRunnerApi>();

            testCallbacks = new TestCallbacks
            {
                RunFinishedCallback = CheckEditModeTestResults
            };
        }
        private static void RunTestsBeforePackageUpload()
        {
            AssetStoreToolsCallbacks.beforeUpload += (sender, next) => {
                #if UNITY_2019_2_OR_NEWER
                var dialog = EditorUtility.DisplayDialogComplex(
                    "Run Tests",
                    "Want to run unit tests before uploading package?",
                    "Run tests",
                    "Don't run",
                    "Cancel"
                    );

                switch (dialog)
                {
                case 0:     // Run tests

                    var callbacks = new TestCallbacks()
                    {
                        runFinished = (result) => {
                            var failed = result.FailCount > 0 ||
                                         result.AssertCount > 0;

                            if (!failed)
                            {
                                Debug.Log("Tests OK");
                                next();
                            }
                            else
                            {
                                Debug.LogError("Tests failed");
                            }
                        }
                    };

                    TestRunnerCallbacks.RunTests(callbacks);
                    return;

                case 1:     // Don't run tests
                    next();
                    return;

                case 2:     // Cancel
                    return;
                }
                #else
                if (EditorUtility.DisplayDialog(
                        "Tests not available",
                        "Automated testing not available until Unity 2019.2, make sure to manually run unit tests",
                        "Continue",
                        "Cancel"
                        ))
                {
                    next();
                }
                #endif
            };
        }
    public static void RunTests(TestCallbacks callbacks, TestMode testModeToRun = TestMode.EditMode)
    {
        var testRunnerApi = ScriptableObject.CreateInstance <TestRunnerApi>();
        var filter        = new Filter()
        {
            testMode = testModeToRun
        };
        var executionSettings = new ExecutionSettings(filter);

        testRunnerApi.RegisterCallbacks(callbacks);
        testRunnerApi.Execute(executionSettings);
    }
Пример #4
0
 // Start is called before the first frame update
 void Start()
 {
     Instance = this;
     MonoJavaCallback.InitMonoJavaCallback();
     ConnectEngine.Instance.OnConnect         += OnConnectUI;
     ConnectEngine.Instance.ConnectionChanged += ConnectionStatusChanged;
     ipField.onEndEdit.AddListener(SubmitIP);
     portField.onEndEdit.AddListener(SubmitPort);
     currentParameters = new ConnectionParams
     {
         name = "TestTCPConnection"
     };
     connectButton.onClick.AddListener(TestTCPConnect);
     disconnectButton.onClick.AddListener(TestTCPDisconnect);
     if (currentParameters.HasSavedData())
     {
         currentParameters    = Newtonsoft.Json.JsonConvert.DeserializeObject <ConnectionParams>(currentParameters.GetStringParametersFromPlayerPrefs());
         ipField.text         = currentParameters.ip;
         portField.text       = currentParameters.port.ToString();
         keepAliveToggle.isOn = currentParameters.keepAlive;
     }
 }