Пример #1
0
        public void SerializeBoardConfigTest1()
        {
            var conf = new BoardConfiguration ();
            conf.AddPin (new APin (){ Number = 42 });

            Formator.Serialize (MemStream, conf);
            MemStream.Seek (0, SeekOrigin.Begin);

            var confClone = (BoardConfiguration)Formator.Deserialize (MemStream);

            Assert.AreEqual (conf.Pins [0], confClone.Pins [0]);
        }
Пример #2
0
        public void CSVMappingTest()
        {
            var con = new BoardConfiguration ();
            con.AddPin (new APin (){ Number = 1, Name = "Pin1" });
            con.AddPin (new APin (){ Number = 2, Name = "Pin2" });
            con.AddPin (new APin (){ Number = 3, Name = "Pin3" });

            var res = con.CreateMapping ();

            Assert.AreEqual (3, res.Keys.Count);
            Assert.AreEqual (0, res [con.Pins [0].DisplayName]);
            Assert.AreEqual (1, res [con.Pins [1].DisplayName]);
            Assert.AreEqual (2, res [con.Pins [2].DisplayName]);

            con.AddMeasurementCombination (new MeasurementCombination () {
                Pins = new System.Collections.Generic.List<APin> (){ con.Pins [0] as APin, con.Pins [1] as APin },
                Name = "MeCom"
            });

            res = con.CreateMapping ();

            Assert.AreEqual (4, res.Keys.Count);
            Assert.AreEqual (3, res [con.MeasurementCombinations [0].DisplayName]);
        }
Пример #3
0
        public void DPinCloneTest2()
        {
            string name = "TestPin";

            conf = new BoardConfiguration ();
            conf.AddPin (new DPin () {
                Number = 5,
                Name = name
            });

            conf.ClonePin (conf.DigitalPins [0]);

            Assert.AreEqual (2, conf.DigitalPins.Count);
            Assert.AreEqual (name, conf.DigitalPins [0].Name);
            Assert.AreEqual (name, conf.DigitalPins [1].Name);

            conf.DigitalPins [0].Name = string.Empty;
            Assert.AreEqual (name, conf.DigitalPins [1].Name);
        }
Пример #4
0
        public void SerializeBoardConfigTest2()
        {
            var conf = new BoardConfiguration ();
            conf.Board.AnalogReferenceVoltageType = "INTERNAL";
            conf.Board.AnalogReferenceVoltage = 4.24;

            var pin = new APin (){ Number = 42 };

            var MeCom = new MeasurementCombination ();
            MeCom.AddPin (pin);

            conf.AddPin (pin);
            conf.AddMeasurementCombination (MeCom);

            Formator.Serialize (MemStream, conf);
            MemStream.Seek (0, SeekOrigin.Begin);

            var confClone = (BoardConfiguration)Formator.Deserialize (MemStream);

            Assert.AreEqual (conf.Pins [0], confClone.Pins [0]);
            Assert.AreEqual (conf.MeasurementCombinations [0], confClone.MeasurementCombinations [0]);
            Assert.AreEqual (4.24, conf.Board.AnalogReferenceVoltage, 0.000000001);
            Assert.AreEqual (4.24, confClone.Board.AnalogReferenceVoltage, 0.000000001);
            Assert.AreEqual ("INTERNAL", conf.Board.AnalogReferenceVoltageType);
            Assert.AreEqual ("INTERNAL", confClone.Board.AnalogReferenceVoltageType);
            Assert.AreSame (conf.Pins [0], conf.MeasurementCombinations [0].Pins [0]);
            Assert.AreSame (confClone.Pins [0], confClone.MeasurementCombinations [0].Pins [0]);

            conf.Pins [0].Name = "Dulli";
            Assert.AreEqual (conf.Pins [0].Name, conf.MeasurementCombinations [0].Pins [0].Name);
            Assert.AreEqual (19, confClone.AvailableDigitalPins.Length);
            Assert.AreEqual (6, confClone.AvailableAnalogPins.Length);

            conf.ClearPins ();
            Assert.AreEqual (0, conf.Pins.Count);
            Assert.AreEqual (0, conf.MeasurementCombinations.Count);
        }
Пример #5
0
        public void GroupTest()
        {
            var conf = new BoardConfiguration ();

            for (uint i = 0; i < 10; i++)
            {
                conf.AddPin (new DPin () {
                    Number = i
                });
                conf.AddSequence (new Sequence () {
                    Pin = conf.DigitalPins [(int)i],
                    GroupName = i.ToString ()
                });
            }

            Assert.AreEqual (10, conf.SequenceGroups.Count);

            conf.RemoveSequence (5);
            Assert.AreEqual (9, conf.SequenceGroups.Count);

            conf.Sequences [2].GroupName = conf.Sequences [0].GroupName;
            Assert.AreEqual (8, conf.SequenceGroups.Count);
        }
Пример #6
0
        public void SetupSequence()
        {
            conf = new BoardConfiguration ();
            conf.AddPin (new DPin (){ Number = 0 });
            conf.AddPin (new DPin (){ Number = 1 });

            conf.AddSequence (new Sequence () { Pin = conf.DigitalPins [0],
                Chain = new List<SequenceOperation> () {
                    new SequenceOperation () {
                        Duration = TimeSpan.FromSeconds (1),
                        State = DPinState.HIGH
                    },
                    new SequenceOperation () {
                        Duration = TimeSpan.FromSeconds (1),
                        State = DPinState.HIGH
                    }
                }
            });
        }
Пример #7
0
        public void SetupMeasurementCombination()
        {
            conf = new BoardConfiguration ();
            conf.AddPin (new APin (){ Number = 0 });
            conf.AddPin (new APin (){ Number = 1 });

            conf.AddMeasurementCombination (new MeasurementCombination () {
                Pins = new List<APin> (){ conf.AnalogPins [0], conf.AnalogPins [1] },
            });
        }
Пример #8
0
        public void Setup()
        {
            conf = new BoardConfiguration ();

            for (int i = 0; i < 5; i++)
            {
                conf.AddPin (new APin (){ Number = (uint)i });
                conf.AddPin (new DPin (){ Number = (uint)i });
            }
        }