Exemplo n.º 1
0
 private static void Compare(VariableTypeDesign expected, VariableTypeDesign actual)
 {
     CompareTypeDesign(expected, actual);
     Compare(expected.DefaultValue, actual.DefaultValue);
     Compare(expected.DataType, actual.DataType, "DataType");
     if (expected.ValueRankSpecified && expected.ValueRank == ValueRank.Scalar)
     {
         expected.ValueRankSpecified = false;
     }
     Assert.AreEqual <bool>(expected.ValueRankSpecified, actual.ValueRankSpecified);
     if (expected.ValueRankSpecified)
     {
         Assert.AreEqual <ValueRank>(expected.ValueRank, actual.ValueRank);
     }
     Assert.AreEqual <string>(expected.ArrayDimensions, actual.ArrayDimensions);
     //Not supported by the VariableType NodeClass
     Assert.IsFalse(expected.ExposesItsChildren);
     Assert.IsFalse(actual.ExposesItsChildren);
     Assert.IsFalse(expected.AccessLevelSpecified);
     Assert.IsFalse(actual.AccessLevelSpecified);
     Assert.IsFalse(expected.HistorizingSpecified);
     Assert.IsFalse(actual.HistorizingSpecified);
     Assert.IsFalse(expected.MinimumSamplingIntervalSpecified);
     Assert.IsFalse(actual.MinimumSamplingIntervalSpecified);
 }
        //internal API
        internal override NodeDesign Export(List <string> path, Action <InstanceDesign, List <string> > createInstanceType)
        {
            VariableTypeDesign _ret = new VariableTypeDesign()
            {
                ArrayDimensions = this.ArrayDimensions,
                DataType        = this.DataType,
                DefaultValue    = this.DefaultValue,
                //Not supported by the VariableType NodeClass
                ExposesItsChildren               = false,
                AccessLevel                      = AccessLevel.ReadWrite,
                AccessLevelSpecified             = false,
                Historizing                      = false,
                HistorizingSpecified             = false,
                MinimumSamplingInterval          = 0,
                MinimumSamplingIntervalSpecified = false,
            };

            _ret.ValueRank = this.ValueRank.GetValueRank(x => _ret.ValueRankSpecified = x, TraceEvent);
            base.Update(_ret, path, createInstanceType);
            return(_ret);
        }