本文整理汇总了C#中QuickFix.Dictionary.SetDay方法的典型用法代码示例。如果您正苦于以下问题:C# QuickFix.Dictionary.SetDay方法的具体用法?C# QuickFix.Dictionary.SetDay怎么用?C# QuickFix.Dictionary.SetDay使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QuickFix.Dictionary
的用法示例。
在下文中一共展示了QuickFix.Dictionary.SetDay方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: testOptArgs
public void testOptArgs()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "00:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "00:00:00");
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Thursday);
Assert.Throws(typeof(QuickFix.ConfigError), delegate { new QuickFix.SessionSchedule(settings); });
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
Assert.DoesNotThrow(delegate { new QuickFix.SessionSchedule(settings); });
}
示例2: testWeeklySessionSameDayOneDay
public void testWeeklySessionSameDayOneDay()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "00:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "05:00:00");
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Monday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
//a sunday
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 16, 23, 59, 59)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 16, 0, 0, 0)));
//a monday
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 0, 0, 1)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 4, 0, 1)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 17, 6, 59, 59)));
//a tuesday
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 18, 9, 43, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 18, 0, 0, 0)));
}
示例3: testWeeklySessionMultiDayOverlap
public void testWeeklySessionMultiDayOverlap()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "00:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "00:00:00");
//only on wed-sunday night
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Wednesday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Monday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
//wed-monday
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 19, 9, 43, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 20, 9, 43, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 21, 9, 43, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 22, 9, 43, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 16, 9, 43, 0)));
//monday
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 17, 9, 43, 0)));
//tuesday
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 18, 9, 43, 0)));
}
示例4: testWeeklySessionMultiDayHoursOverlap
public void testWeeklySessionMultiDayHoursOverlap()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "15:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "07:00:00");
//only on monday-fri
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
//weekdays
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 15, 30, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 17, 6, 30, 0)),"foo");
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 21, 5, 30, 59)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 21, 15, 30, 59)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 6, 59, 59)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 7, 00, 1)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 15, 30, 0)));
}
示例5: testWeeklySessionMultiDayHours
public void testWeeklySessionMultiDayHours()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "07:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "15:00:00");
//only on monday-fri
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
//Monday Scenarios
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 17, 6, 59, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 7, 30, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 15, 30, 0)));
//Midweek Scenarios
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 19, 6, 59, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 19, 7, 30, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 19, 15, 30, 0)));
//Friday Scenarios
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 21, 6, 59, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 21, 7, 30, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 21, 15, 30, 0)));
//Weekend
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 6, 59, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 7, 30, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 15, 30, 0)));
}
示例6: testWeeklySessionMultiDay
public void testWeeklySessionMultiDay()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "00:00:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "00:00:00");
//only on monday-thur (note end time)
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
//a monday
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 0, 0, 0)));
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 17, 9, 43, 0)));
// a thursday
Assert.IsTrue(sched.IsSessionTime(new DateTime(2011, 10, 20, 23, 59, 59)));
//a fri, sat, sun
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 21, 23, 59, 59)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 22, 0, 0, 0)));
Assert.IsFalse(sched.IsSessionTime(new DateTime(2011, 10, 16, 9, 43, 0)));
}
示例7: testLastEndTime_WeeklySessions
public void testLastEndTime_WeeklySessions()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "09:30:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "16:00:00");
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
DateTime thisWeekEnd = new DateTime(2012, 10, 19, 16, 00, 00, DateTimeKind.Utc);
DateTime prevWeekEnd = new DateTime(2012, 10, 12, 16, 00, 00, DateTimeKind.Utc);
// before starttime
Assert.AreEqual(prevWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 15, 08, 00, 00, DateTimeKind.Utc)));
// during session
Assert.AreEqual(prevWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 17, 08, 00, 00, DateTimeKind.Utc)));
// equals endtime
Assert.AreEqual(thisWeekEnd, sched.LastEndTime(thisWeekEnd));
// after endtime
Assert.AreEqual(thisWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 19, 17, 00, 00, DateTimeKind.Utc)));
// ==========
// Settings file is specified in a zone (est, -5)
settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "04:30:00"); // 09:30:00 utc
settings.SetString(QuickFix.SessionSettings.END_TIME, "11:00:00"); // 16:00:00 utc
settings.SetString(QuickFix.SessionSettings.TIME_ZONE, "Eastern Standard Time"); //-5
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
sched = new QuickFix.SessionSchedule(settings);
// before starttime
Assert.AreEqual(prevWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 15, 08, 00, 00, DateTimeKind.Utc)));
// during session
Assert.AreEqual(prevWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 17, 08, 00, 00, DateTimeKind.Utc)));
// equals endtime
Assert.AreEqual(thisWeekEnd, sched.LastEndTime(thisWeekEnd));
// after endtime
Assert.AreEqual(thisWeekEnd, sched.LastEndTime(new DateTime(2012, 10, 19, 17, 00, 00, DateTimeKind.Utc)));
}
示例8: testNextEndTime_Weekly
public void testNextEndTime_Weekly()
{
QuickFix.Dictionary settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "09:30:00");
settings.SetString(QuickFix.SessionSettings.END_TIME, "16:00:00");
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
QuickFix.SessionSchedule sched = new QuickFix.SessionSchedule(settings);
// Oct 15 and 22 are Mondays, 19 and 26 are Fridays
Assert.AreEqual("20121019-16:00:00",
sched.NextEndTime(new DateTime(2012, 10, 19, 15, 59, 59, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20121019-16:00:00",
sched.NextEndTime(new DateTime(2012, 10, 19, 16, 00, 00, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20121026-16:00:00",
sched.NextEndTime(new DateTime(2012, 10, 19, 16, 00, 01, DateTimeKind.Utc)).ToString(FMT));
// ==========
// Settings file is specified in a zone (est, -5)
settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "04:30:00"); // 09:30:00 utc
settings.SetString(QuickFix.SessionSettings.END_TIME, "11:00:00"); // 16:00:00 utc
settings.SetString(QuickFix.SessionSettings.TIME_ZONE, EASTERN_STANDARD_TIME_ZONE_ID); //-5
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
sched = new QuickFix.SessionSchedule(settings);
// Dec 14 and 21 are Fridays
Assert.AreEqual("20121214-11:00:00",
sched.NextEndTime(new DateTime(2012, 12, 14, 15, 59, 59, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20121214-11:00:00",
sched.NextEndTime(new DateTime(2012, 12, 14, 16, 00, 00, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20121221-11:00:00",
sched.NextEndTime(new DateTime(2012, 12, 14, 16, 00, 01, DateTimeKind.Utc)).ToString(FMT));
// ==========
// Time zone during Daylight Savings
settings = new QuickFix.Dictionary();
settings.SetString(QuickFix.SessionSettings.START_TIME, "05:30:00"); // 09:30:00 utc
settings.SetString(QuickFix.SessionSettings.END_TIME, "12:00:00"); // 16:00:00 utc
settings.SetString(QuickFix.SessionSettings.TIME_ZONE, EASTERN_STANDARD_TIME_ZONE_ID); //-4 for DST
settings.SetDay(QuickFix.SessionSettings.START_DAY, System.DayOfWeek.Monday);
settings.SetDay(QuickFix.SessionSettings.END_DAY, System.DayOfWeek.Friday);
sched = new QuickFix.SessionSchedule(settings);
// June 15 and 22 are Fridays
Assert.AreEqual("20120615-12:00:00",
sched.NextEndTime(new DateTime(2012, 06, 15, 15, 59, 59, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20120615-12:00:00",
sched.NextEndTime(new DateTime(2012, 06, 15, 16, 00, 00, DateTimeKind.Utc)).ToString(FMT));
Assert.AreEqual("20120622-12:00:00",
sched.NextEndTime(new DateTime(2012, 06, 15, 16, 00, 01, DateTimeKind.Utc)).ToString(FMT));
}