Example #1
0
        public void test_heart_beat_execthread_exception()
        {
            //Arrange/Act
            //The ExecThread() function is executed in a different Thread
            //Then If we pass the parameter DynamoModel dynModel as null it will reach the Exception section in ExecThread()
            var heartbeat = Heartbeat.GetInstance(null);


            //Using reflection we execute the ValidateLength method with null in the second parameter
            MethodInfo dynMethod         = typeof(Heartbeat).GetMethod("GetVersionString", BindingFlags.NonPublic | BindingFlags.Instance);
            var        fileVersionString = (string)dynMethod.Invoke(heartbeat, null);

            //Assert
            Assert.IsFalse(string.IsNullOrEmpty(fileVersionString));
            var versionParts = fileVersionString.Split('.');

            Assert.Greater(versionParts.Length, 0);

            Heartbeat.DestroyInstance();
        }
Example #2
0
        public void test_heart_beat_version_string()
        {
            //Arrange
            var heartbeat = Heartbeat.GetInstance(CurrentDynamoModel);

            //Act
            //Using reflection we execute the GetVersionString method and store the result
            MethodInfo dynMethod         = typeof(Heartbeat).GetMethod("GetVersionString", BindingFlags.NonPublic | BindingFlags.Instance);
            var        fileVersionString = (string)dynMethod.Invoke(heartbeat, null);

            //Assert
            //Check that the string response has something and has the right length
            Assert.IsFalse(string.IsNullOrEmpty(fileVersionString));
            var versionParts = fileVersionString.Split('.');

            Assert.Greater(versionParts.Length, 0);
            foreach (var strPart in versionParts)
            {
                Assert.IsTrue(Regex.IsMatch(strPart, @"^\d+$"));
            }
            Heartbeat.DestroyInstance();
        }
Example #3
0
        public void test_heart_beat_compute_error_freq()
        {
            //Arrange
            //This file has a code block with a error
            string openPath = Path.Combine(TestDirectory,
                                           @"core\dsevaluation\Test_PortErrorBehavior_CodeBlockErrorsInFile.dyn");

            OpenModel(openPath);

            //We get the code block that has a error state
            var cbn = CurrentDynamoModel.CurrentWorkspace.NodeFromWorkspace <CodeBlockNodeModel>(
                Guid.Parse("dad587d1-acee-445c-890d-98500b408ec6"));

            //Act
            //Inside the Heartbeat constructor is called the method but inside a Thread
            var heartbeat = Heartbeat.GetInstance(CurrentDynamoModel);

            //Assert
            //We just make some validations about the codeblock state and the heartbeat instance
            Assert.AreEqual(ElementState.Error, cbn.State);
            Assert.IsNotNull(heartbeat);

            Heartbeat.DestroyInstance();
        }