Beispiel #1
0
        public void RecordTest()
        {
            var recorder = new Graver <fbInheritanceLevel_5, PlainfbInheritanceLevel_5>(connector.MAIN.InheritanceRw);

            recorder.StartRecording();

            for (int i = 0; i < 254; i++)
            {
                connector.MAIN.InheritanceRw.level_0.BYTE_val.Cyclic    = (byte)i;
                connector.MAIN.InheritanceRw.level_1.BYTE_val.Cyclic    = (byte)i;
                connector.MAIN.InheritanceRw.level_2.WORD_val.Cyclic    = (ushort)(i * 2);
                connector.MAIN.InheritanceRw.level_2.STRING_val.Cyclic  = (i * 180).ToString();
                connector.MAIN.InheritanceRw.level_3.WSTRING_val.Cyclic = (i * 258).ToString();
                connector.MAIN.InheritanceRw.Write();
                recorder.RecordFrame();
            }

            recorder.Stop(RecordingFile);

            Assert.IsTrue(File.Exists(RecordingFile), "Recroding file not created.");
        }
Beispiel #2
0
        public void SquashTest()
        {
            var recorder = new Graver <stAllTypes, PlainstAllTypes>(connector.MAIN.InheritanceRw.level_0);

            recorder.StartRecording();

            for (int i = 0; i < 254; i++)
            {
                if (i % 10 == 0)
                {
                    connector.MAIN.InheritanceRw.level_0.STRING_val.Cyclic = i.ToString();
                    connector.MAIN.InheritanceRw.level_0.Write();
                }

                recorder.RecordFrame();
            }

            recorder.Stop(SquashTestFile);
            Assert.IsTrue(File.Exists(SquashTestFile), "Squash test recording file not created.");

            var player = new Player <stAllTypes, PlainstAllTypes>(connector.MAIN.InheritanceRw.level_0);

            player.StartPlay(SquashTestFile);



            foreach (var item in recorder.Recording.Frames)
            {
                Console.WriteLine($"{item.Stamp} : {item.Object.STRING_val}");
            }

            Assert.AreEqual(26, player.Recording.Frames.Count());
            Assert.AreEqual(9, player.Recording.Frames[0].Stamp);
            Assert.AreEqual("0", player.Recording.Frames[0].Object.STRING_val);
            Assert.AreEqual(19, player.Recording.Frames[1].Stamp);
            Assert.AreEqual("10", player.Recording.Frames[1].Object.STRING_val);
            Assert.AreEqual(253, player.Recording.Frames[25].Stamp);
            Assert.AreEqual("250", player.Recording.Frames[25].Object.STRING_val);
        }