本文整理汇总了C#中QuickFix.DataDictionary.DataDictionary.Validate方法的典型用法代码示例。如果您正苦于以下问题:C# QuickFix.DataDictionary.DataDictionary.Validate方法的具体用法?C# QuickFix.DataDictionary.DataDictionary.Validate怎么用?C# QuickFix.DataDictionary.DataDictionary.Validate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QuickFix.DataDictionary.DataDictionary
的用法示例。
在下文中一共展示了QuickFix.DataDictionary.DataDictionary.Validate方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ValidateWrongTypeInRepeatingGroup
public void ValidateWrongTypeInRepeatingGroup()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = {"8=FIX.4.4", "9=111", "35=V", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"262=mdreqid", "263=0", "264=5",
"267=1", // MDReqGrp
"269=failboat", // should be a char
"146=1", // InstrmtMDReqGrp
"55=sym",
"10=91"};
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "V";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
dd.Validate(message, beginString, msgType);
}
示例2: ValidateWithRepeatingGroupTest
public void ValidateWithRepeatingGroupTest()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX42.xml");
QuickFix.FIX42.MessageFactory f = new QuickFix.FIX42.MessageFactory();
string nul = Message.SOH;
string msgStr = "8=FIX.4.2" + nul + "9=87" + nul + "35=B" + nul + "34=3" + nul + "49=CLIENT1" + nul
+ "52=20111012-22:15:55.474" + nul + "56=EXECUTOR" + nul + "148=AAAAAAA" + nul
+ "33=2" + nul + "58=L1" + nul + "58=L2" + nul + "10=016" + nul;
QuickFix.Fields.MsgType msgType = Message.IdentifyType(msgStr);
string beginString = Message.ExtractBeginString(msgStr);
Message message = f.Create(beginString, msgType.Obj);
message.FromString(
msgStr,
true,
dd,
dd);
// Session.Next(message)
dd.Validate(message, beginString, msgType.Obj);
}
示例3: ValidateWrongType
public void ValidateWrongType()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = {"8=FIX.4.4", "9=120", "35=D", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"11=clordid", "55=sym", "54=1", "60=20110909-09:09:09.999", "40=1",
"38=failboat", // should be a decimal
"10=64"};
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "D";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
dd.Validate(message, beginString, msgType);
}
示例4: ValidateWrongTypeInNestedRepeatingGroup
public void ValidateWrongTypeInNestedRepeatingGroup()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = {"8=FIX.4.4", "9=185", "35=J", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"70=AllocID", "71=0", "626=1", "857=0", "54=1", "55=sym", "53=1", "6=5.5", "75=20110909-09:09:09.999",
"73=1", // NoOrders
"11=clordid",
"756=1", // NoNested2PartyIDs
"757=nested2partyid",
"759=failboat", // supposed to be a int
"10=48"};
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "J";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
dd.Validate(message, beginString, msgType);
}
示例5: ValidateDateAndTimeFields
public void ValidateDateAndTimeFields()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = { "8=FIX.4.4", "9=104", "35=W", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"55=sym", "268=1", "269=0", "272=20111012", "273=22:15:30.444", "10=19" };
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "W";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
try
{
dd.Validate(message, beginString, msgType);
}
catch (QuickFix.TagException e)
{
Console.WriteLine(e.ToString());
Console.WriteLine(e.Field);
throw;
}
}
示例6: ValidateTimeOnly_Invalid
public void ValidateTimeOnly_Invalid()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
// intentionally invalid MDEntryTime (272/TimeOnly)
string[] msgFields = { "8=FIX.4.4", "9=113", "35=W", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"55=sym", "268=1", "269=0", "272=20111012", "273=20111012-22:15:30.444", "10=200" };
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "W";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
// this should throw
dd.Validate(message, beginString, msgType);
}
示例7: RequiredComponentRequiredField
public void RequiredComponentRequiredField()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = { "8=FIX.4.4", "9=76", "35=7", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"2=AdvId", "5=N", "4=B", "53=1", "10=138" };
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "7";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
var ex = Assert.Throws<QuickFix.RequiredTagMissing>(delegate { dd.Validate(message, beginString, msgType); });
Assert.AreEqual(55, ex.Field);
}
示例8: OptionalComponentRequiredField
public void OptionalComponentRequiredField()
{
// issue #98 - message erroneously rejected because DD says that
// component-required field is missing even though component is not present
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = { "8=FIX.4.4", "9=77", "35=AD", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"568=tradereqid", "569=0", "10=109" };
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "AD";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
dd.Validate(message, beginString, msgType);
}
示例9: ValidateTagSpecifiedWithoutAValue
[Test] // Issue #282 investigation
public void ValidateTagSpecifiedWithoutAValue()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX42.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = {"8=FIX.4.2", "9=65", "35=B", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"148=", "33=0", "10=188"};
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "B";
string beginString = "FIX.4.2";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd);
dd.CheckFieldsHaveValues = true;
Assert.Throws<QuickFix.NoTagValue>(delegate { dd.Validate(message, beginString, msgType); });
dd.CheckFieldsHaveValues = false;
Assert.DoesNotThrow(delegate { dd.Validate(message, beginString, msgType); });
}
示例10: ValidateMultipleValueStringType_Invalid
public void ValidateMultipleValueStringType_Invalid()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary( "../../../spec/fix/FIX44.xml" );
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
string[] msgFields = {"8=FIX.4.4", "9=99", "35=W", "34=3", "49=sender", "52=20110909-09:09:09.999", "56=target",
"55=sym",
"268=1", "269=0", "270=123.23", "271=2", "277=A 1",
"10=196"};
string msgStr = String.Join( Message.SOH, msgFields ) + Message.SOH;
string msgType = "W";
string beginString = "FIX.4.4";
Message message = f.Create( beginString, msgType );
message.FromString( msgStr, true, dd, dd );
dd.Validate( message, beginString, msgType );
}
示例11: ValidateDateTime_Invalid
public void ValidateDateTime_Invalid()
{
QuickFix.DataDictionary.DataDictionary dd = new QuickFix.DataDictionary.DataDictionary("../../../spec/fix/FIX44.xml");
QuickFix.FIX44.MessageFactory f = new QuickFix.FIX44.MessageFactory();
// intentionally invalid SendingTime (52/DateTime)
string[] msgFields = { "8=FIX.4.4", "9=91", "35=W", "34=3", "49=sender", "52=20110909", "56=target",
"55=sym", "268=1", "269=0", "272=20111012", "273=22:15:30.444", "10=51" };
string msgStr = String.Join(Message.SOH, msgFields) + Message.SOH;
string msgType = "W";
string beginString = "FIX.4.4";
Message message = f.Create(beginString, msgType);
message.FromString(msgStr, true, dd, dd, f);
Assert.That(() => dd.Validate(message, beginString, msgType), Throws.TypeOf<QuickFix.IncorrectDataFormat>());
}