Exemple #1
0
        public static bool startTest()
        {
            if (testStage != TestStage.NOT_RUNNING)
            {
                return(false);
            }

            // Reset counters
            numDataObjectsGenerated = 0;

            setTestStage(TestStage.STARTING);

            if (!startHaggle())
            {
                setTestStage(TestStage.NOT_RUNNING);
                return(false);
            }

            // Start LuckyMe thread
            if (!LuckyMeLib.isLuckyMeRunning())
            {
                int res = LuckyMeLib.startLuckyMe();

                if (res < 0)
                {
                    Debug.WriteLine("Error: Could not start LuckyMe!");
                    setTestStage(TestStage.NOT_RUNNING);
                    return(false);
                }

                // Check again that LuckyMe and the Haggle event loop is running
                if (!LuckyMeLib.isLuckyMeRunning())
                {
                    Debug.WriteLine("Error: LuckyMe not running after start!");
                    setTestStage(TestStage.NOT_RUNNING);
                    return(false);
                }
            }
            else
            {
                Debug.WriteLine("LuckyMe already running");
            }

            Thread.Sleep(2000);

            if (!LuckyMeLib.isTestRunning())
            {
                Debug.WriteLine("Starting LuckyMe test loop");

                int res = LuckyMeLib.startTest();

                if (res < 0)
                {
                    Debug.WriteLine("Error: Could not start LuckyMe test loop!");
                    setTestStage(TestStage.NOT_RUNNING);
                    LuckyMeLib.stopHaggle();
                    return(false);
                }
            }
            else
            {
                Debug.WriteLine("LuckyMe test already running");
            }

            setTestStage(TestStage.RUNNING);

            return(true);
        }