Пример #1
0
        public void VerifyMessageBodyWithOneOf(string oneOfName, FieldTupleType[] fieldTuples
                                               , OptionIdentifierPath[] optionNames, IVariant[] optionValues)
        {
            Assert.NotNull(fieldTuples);
            Assert.NotEmpty(fieldTuples);

            IEnumerable <IOneOfBodyItem> GetOneOfBodyItems()
            {
                foreach (var(protoType, fieldName, fieldNumber) in fieldTuples)
                {
                    yield return(new OneOfFieldStatement
                    {
                        // TODO: TBD: may further generalize this in the test cases themselves...
                        FieldType = Variant.Create(protoType),
                        Name = fieldName,
                        Number = fieldNumber,
                        Options = ElaborateOptions <FieldOption>(optionNames, optionValues).ToList()
                    });
                }
            }

            ExpectedBody.Add(new OneOfStatement {
                Name = oneOfName, Items = GetOneOfBodyItems().ToList()
            });
        }
Пример #2
0
 public void VerifyMessageBodyWithEmptyGroupField(LabelKind label, string groupName, long fieldNumber)
 {
     ExpectedBody.Add(
         new GroupFieldStatement {
         Label = label, Name = groupName, Number = fieldNumber
     }
         );
 }
Пример #3
0
 public void VerifyMessageBodyWithEmptyOneOf(string oneOfName)
 {
     ExpectedBody.Add(new OneOfStatement
     {
         Name  = oneOfName,
         Items = GetRange <IOneOfBodyItem>(NewEmptyStatement).ToList()
     });
 }
Пример #4
0
        public void VerifyMessageBodyWithFieldNamesReserved(Identifier[] fieldNames)
        {
            Assert.NotNull(fieldNames);
            Assert.NotEmpty(fieldNames);

            ExpectedBody.Add(new FieldNamesReservedStatement {
                Items = fieldNames.ToList()
            });
        }
Пример #5
0
 public virtual void VerifyMessageBodyWithNormalField(LabelKind label, IVariant fieldType, string fieldName
                                                      , long fieldNumber)
 {
     ExpectedBody.Add(new NormalFieldStatement
     {
         Label     = label,
         FieldType = fieldType,
         Name      = fieldName,
         Number    = fieldNumber
     });
 }
Пример #6
0
        public void VerifyMessageBodyWithEmptyExtend(ElementTypeIdentifierPath[] messageTypes)
        {
            Assert.NotNull(messageTypes);

            ExpectedBody.AddRange(
                messageTypes.Select <ElementTypeIdentifierPath, IMessageBodyItem>(
                    x => new ExtendStatement {
                MessageType = x
            }).ToArray()
                );
        }
Пример #7
0
 public void VerifyMessageBodyWithMapField(KeyType keyType, IVariant valueType, string mapName, long fieldNumber
                                           , OptionIdentifierPath[] optionNames, IVariant[] optionValues)
 {
     ExpectedBody.Add(new MapFieldStatement
     {
         KeyType   = keyType,
         ValueType = valueType,
         Name      = mapName,
         Number    = fieldNumber,
         Options   = ElaborateOptions <FieldOption>(optionNames, optionValues).ToList()
     });
 }
Пример #8
0
 public void VerifyMessageBodyWithOption(OptionIdentifierPath[] optionNames, IVariant[] optionValues)
 {
     ExpectedBody.AddRange(
         ElaborateOptions <OptionStatement>(optionNames, optionValues).ToArray <IMessageBodyItem>()
         );
 }
Пример #9
0
 public void VerifyMessageBodyWithRangesReserved(Tuple <long, long?>[] ranges)
 {
     ExpectedBody.Add(new RangesReservedStatement {
         Items = ranges.ToRangeDescriptors().ToList()
     });
 }
Пример #10
0
 public void VerifyMessageBodyWithExtensions(Tuple <long, long?>[] ranges)
 {
     ExpectedBody.Add(new ExtensionsStatement {
         Items = ranges.ToRangeDescriptors().ToList()
     });
 }
Пример #11
0
 public void VerifyMessageBodyWithEmptyMessage(string innerMessageName)
 {
     ExpectedBody.Add(new MessageStatement {
         Name = innerMessageName
     });
 }
Пример #12
0
 public void VerifyMessageBodyWithEmptyEnum(string enumName)
 {
     ExpectedBody.Add(new EnumStatement {
         Name = enumName
     });
 }