Пример #1
0
        public void WTTHeader_Prop_CheckVersionBuildReadOnly()
        {
            GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
            AttributeCollection attributes = TypeDescriptor.GetProperties(TestHeader)["VersionBuild"].Attributes;

            Assert.True(attributes[typeof(ReadOnlyAttribute)].Equals(ReadOnlyAttribute.Yes));
        }
Пример #2
0
        public void WTTHeader_Constructor_XElement_CheckPropTrainDescriptionTemplate(string FileName, string ExpectedValue)
        {
            string   FullPath = new Uri($@"{AppDomain.CurrentDomain.BaseDirectory}{FileName}").LocalPath;
            XElement TestXML  = XDocument.Load(FullPath).Element("SimSigTimetable");

            GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader(TestXML);
            Assert.Equal(ExpectedValue, TestHeader.TrainDescriptionTemplate);
        }
Пример #3
0
        public void WTTHeader_Constructor_XElement_CheckStartDateArgument(string FileName)
        {
            string   FullPath = new Uri($@"{AppDomain.CurrentDomain.BaseDirectory}{FileName}").LocalPath;
            XElement TestXML  = XDocument.Load(FullPath).Element("SimSigTimetable");

            GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader(TestXML);
            Assert.Equal(new DateTime(1850, 1, 1), TestHeader.StartDate);

            GroundFrame.Core.Timetables.WTTHeader TestHeaderWithDate = new GroundFrame.Core.Timetables.WTTHeader(TestXML, new DateTime(2018, 7, 1));
            Assert.Equal(new DateTime(2018, 7, 1), TestHeaderWithDate.StartDate);
        }
Пример #4
0
        public void WTTHeader_Method_ToJSON()
        {
            string   FullPath = new Uri($@"{AppDomain.CurrentDomain.BaseDirectory}Resources\TestWTT_4.8.xml").LocalPath;
            XElement TestXML  = XDocument.Load(FullPath).Element("SimSigTimetable");

            GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader(TestXML);

            //Convert header to JSON
            string JSONHeader = TestHeader.ToJSON();

            //Deserialize the JSON string back to an WTTHeader object
            GroundFrame.Core.Timetables.WTTHeader JSONWTTHeader = new Timetables.WTTHeader(JSONHeader);
            //Check both WTTHeader objects are equal
            Assert.Equal(TestHeader.ToString(), JSONWTTHeader.ToString());
        }
Пример #5
0
 public void WTTHeader_Constructor_Name_CheckPropTrainDescriptionTemplate()
 {
     GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
     Assert.Equal("$originTime $originName-$destName $operator ($stock)", TestHeader.TrainDescriptionTemplate);
 }
Пример #6
0
 public void WTTHeader_Constructor_Name_CheckPropBuildVersion()
 {
     GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
     Assert.Equal(0, TestHeader.VersionBuild);
 }
Пример #7
0
 public void WTTHeader_Constructor_Name_CheckPropFinishTime()
 {
     GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
     Assert.Equal(0, TestHeader.FinishTime.Seconds);
 }
Пример #8
0
 public void WTTHeader_Constructor_Name_CheckPropDescription()
 {
     GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
     Assert.Null(TestHeader.Description);
 }
Пример #9
0
 public void WTTHeader_Constructor_Name_CheckPropName()
 {
     GroundFrame.Core.Timetables.WTTHeader TestHeader = new GroundFrame.Core.Timetables.WTTHeader("Test Timetable", 0);
     Assert.Equal("Test Timetable", TestHeader.Name);
 }