Exemplo n.º 1
0
        public void WhenEnumDataTypeWithWrongNamingConvention_ShouldNotCrash()
        {
            var buffer       = new byte[] { 1, 2, 3 };
            var stream       = new AdsStream(buffer);
            var binaryReader = new AdsBinaryReader(stream);

            var act = new Action(() => BeckhoffHelper.ReadDataType("MyTestEnumDoesNotFollowNamingConvention", 16, binaryReader));

            act.ShouldNotThrow();
        }
Exemplo n.º 2
0
        public void GivenNestedTag_WhenDefaultEnumDataType_ShouldRead()
        {
            var buffer       = new byte[] { 1, 2 };
            var stream       = new AdsStream(buffer);
            var binaryReader = new AdsBinaryReader(stream);

            var result = BeckhoffHelper.ReadDataType("MAIN.FB_1.E_MyTestEnum", 16, binaryReader);

            result.GetType().Should().Be(typeof(Int16), "int16 is TwinCat 3 default for enumerations, negative values are allowed");
        }
Exemplo n.º 3
0
        public void WhenStringDataType_ShouldReadString()
        {
            var buffer       = new[] { (byte)'h', (byte)'e', (byte)'l', (byte)'l', (byte)'o' };
            var stream       = new AdsStream(buffer);
            var binaryReader = new AdsBinaryReader(stream);

            var result = BeckhoffHelper.ReadDataType("STRING", 81, binaryReader);

            result.GetType().Should().Be(typeof(string));
            ((string)result).Should().Be("hello");
        }
Exemplo n.º 4
0
        public void WhenBooleanDataType_ShouldReadBool()
        {
            var buffer       = new byte[] { 1 };
            var stream       = new AdsStream(buffer);
            var binaryReader = new AdsBinaryReader(stream);

            var result = BeckhoffHelper.ReadDataType("BOOL", 8, binaryReader);

            result.GetType().Should().Be(typeof(bool));
            ((bool)result).Should().BeTrue();
        }