refactor: Improve parsing of flight schedule data
This commit is contained in:
@@ -279,101 +279,102 @@ var _ = Describe("Parse Line with PreDef", func() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
})
|
})
|
||||||
Describe("Parse Line without PreDef", func() {
|
|
||||||
Context("W/Z", func() {
|
|
||||||
It("W/Z 9C8812 B2863 1/1ILS (00) TSN0100 SHA", func() {
|
|
||||||
lineText := "W/Z 9C8812 B2863 1/1ILS (00) TSN0100 SHA"
|
|
||||||
schedule := ParseWithoutDef(lineText)
|
|
||||||
Expect(schedule).NotTo(BeNil())
|
|
||||||
Expect(schedule.Task).To(Equal("W/Z"))
|
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("9C8812"))
|
|
||||||
Expect(schedule.AircraftReg).To(Equal("B2863"))
|
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0100"))
|
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("SHA"))
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
Context("L01", func() {
|
// var _ = Describe("Parse Line without PreDef", func() {
|
||||||
It("L01 01) B5595 ILS(8) HGH1100 1305TSN", func() {
|
// Context("W/Z", func() {
|
||||||
lineText := "L01 01) B5595 ILS(8) HGH1100 1305TSN"
|
// It("W/Z 9C8812 B2863 1/1ILS (00) TSN0100 SHA", func() {
|
||||||
schedule := ParseWithoutDef(lineText)
|
// lineText := "W/Z 9C8812 B2863 1/1ILS (00) TSN0100 SHA"
|
||||||
Expect(schedule).NotTo(BeNil())
|
// schedule := ParseWithoutDef(lineText)
|
||||||
Expect(schedule.Index).To(Equal("L01"))
|
// Expect(schedule).NotTo(BeNil())
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
// Expect(schedule.Task).To(Equal("W/Z"))
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("01)"))
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
Expect(schedule.AircraftReg).To(Equal("B5595"))
|
// Expect(schedule.FlightNumber[0]).To(Equal("9C8812"))
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
// Expect(schedule.AircraftReg).To(Equal("B2863"))
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("HGH"))
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("1100"))
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("TSN"))
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0100"))
|
||||||
Expect(schedule.Waypoints[1].ArrivalTime).To(Equal("1305"))
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("SHA"))
|
||||||
})
|
// })
|
||||||
})
|
// })
|
||||||
|
|
||||||
Context("L1:", func() {
|
// Context("L01", func() {
|
||||||
It("L1: 29OCT B2863 ILS IS (3/6) TSN2350(28OCT) HAK", func() {
|
// It("L01 01) B5595 ILS(8) HGH1100 1305TSN", func() {
|
||||||
lineText := "L1: 29OCT B2863 ILS IS (3/6) TSN2350(28OCT) HAK"
|
// lineText := "L01 01) B5595 ILS(8) HGH1100 1305TSN"
|
||||||
schedule := ParseWithoutDef(lineText)
|
// schedule := ParseWithoutDef(lineText)
|
||||||
Expect(schedule).NotTo(BeNil())
|
// Expect(schedule).NotTo(BeNil())
|
||||||
Expect(schedule.Index).To(Equal("L1:"))
|
// Expect(schedule.Index).To(Equal("L01"))
|
||||||
Expect(schedule.Date).To(Equal("29OCT"))
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
// Expect(schedule.FlightNumber[0]).To(Equal("01)"))
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("B2863"))
|
// Expect(schedule.AircraftReg).To(Equal("B5595"))
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("HGH"))
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("2350(28OCT)"))
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("1100"))
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("HAK"))
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("TSN"))
|
||||||
})
|
// Expect(schedule.Waypoints[1].ArrivalTime).To(Equal("1305"))
|
||||||
})
|
// })
|
||||||
|
// })
|
||||||
|
|
||||||
Context("L05", func() {
|
// Context("L1:", func() {
|
||||||
It("L05 W/Z B5406 (9) TSN/2355(30OCT) PVG", func() {
|
// It("L1: 29OCT B2863 ILS IS (3/6) TSN2350(28OCT) HAK", func() {
|
||||||
lineText := "L05 W/Z B5406 (9) TSN/2355(30OCT) PVG"
|
// lineText := "L1: 29OCT B2863 ILS IS (3/6) TSN2350(28OCT) HAK"
|
||||||
schedule := ParseWithoutDef(lineText)
|
// schedule := ParseWithoutDef(lineText)
|
||||||
Expect(schedule).NotTo(BeNil())
|
// Expect(schedule).NotTo(BeNil())
|
||||||
Expect(schedule.Index).To(Equal("L05"))
|
// Expect(schedule.Index).To(Equal("L1:"))
|
||||||
Expect(schedule.Task).To(Equal("W/Z"))
|
// Expect(schedule.Date).To(Equal("29OCT"))
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("B5406"))
|
// Expect(schedule.FlightNumber[0]).To(Equal("B2863"))
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("2355(30OCT)"))
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("2350(28OCT)"))
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("PVG"))
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("HAK"))
|
||||||
})
|
// })
|
||||||
})
|
// })
|
||||||
|
|
||||||
Context("1)", func() {
|
// Context("L05", func() {
|
||||||
It("1) B6727 ILS I(9) SYX/0800 1135/TSN", func() {
|
// It("L05 W/Z B5406 (9) TSN/2355(30OCT) PVG", func() {
|
||||||
lineText := "1) B6727 ILS I(9) SYX/0800 1135/TSN"
|
// lineText := "L05 W/Z B5406 (9) TSN/2355(30OCT) PVG"
|
||||||
schedule := ParseWithoutDef(lineText)
|
// schedule := ParseWithoutDef(lineText)
|
||||||
Expect(schedule).NotTo(BeNil())
|
// Expect(schedule).NotTo(BeNil())
|
||||||
Expect(schedule.Index).To(Equal("1)"))
|
// Expect(schedule.Index).To(Equal("L05"))
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
// Expect(schedule.Task).To(Equal("W/Z"))
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("B6727"))
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
// Expect(schedule.FlightNumber[0]).To(Equal("B5406"))
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("SYX"))
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0800"))
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("TSN"))
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("TSN"))
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("2355(30OCT)"))
|
||||||
Expect(schedule.Waypoints[1].ArrivalTime).To(Equal("1135"))
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("PVG"))
|
||||||
})
|
// })
|
||||||
})
|
// })
|
||||||
|
|
||||||
Context("01", func() {
|
// Context("1)", func() {
|
||||||
It("01 B3193 XIY0020(16APR) CGD", func() {
|
// It("1) B6727 ILS I(9) SYX/0800 1135/TSN", func() {
|
||||||
lineText := "01 B3193 XIY0020(16APR) CGD"
|
// lineText := "1) B6727 ILS I(9) SYX/0800 1135/TSN"
|
||||||
schedule := ParseWithoutDef(lineText)
|
// schedule := ParseWithoutDef(lineText)
|
||||||
Expect(schedule).NotTo(BeNil())
|
// Expect(schedule).NotTo(BeNil())
|
||||||
Expect(schedule.Index).To(Equal("01"))
|
// Expect(schedule.Index).To(Equal("1)"))
|
||||||
Expect(len(schedule.FlightNumber)).To(Equal(1))
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
Expect(schedule.FlightNumber[0]).To(Equal("B3193"))
|
// Expect(schedule.FlightNumber[0]).To(Equal("B6727"))
|
||||||
Expect(len(schedule.Waypoints)).To(Equal(2))
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
Expect(schedule.Waypoints[0].Airport).To(Equal("XIY"))
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("SYX"))
|
||||||
Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0020(16APR)"))
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0800"))
|
||||||
Expect(schedule.Waypoints[1].Airport).To(Equal("CGD"))
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("TSN"))
|
||||||
})
|
// Expect(schedule.Waypoints[1].ArrivalTime).To(Equal("1135"))
|
||||||
})
|
// })
|
||||||
|
// })
|
||||||
|
|
||||||
})
|
// Context("01", func() {
|
||||||
|
// It("01 B3193 XIY0020(16APR) CGD", func() {
|
||||||
|
// lineText := "01 B3193 XIY0020(16APR) CGD"
|
||||||
|
// schedule := ParseWithoutDef(lineText)
|
||||||
|
// Expect(schedule).NotTo(BeNil())
|
||||||
|
// Expect(schedule.Index).To(Equal("01"))
|
||||||
|
// Expect(len(schedule.FlightNumber)).To(Equal(1))
|
||||||
|
// Expect(schedule.FlightNumber[0]).To(Equal("B3193"))
|
||||||
|
// Expect(len(schedule.Waypoints)).To(Equal(2))
|
||||||
|
// Expect(schedule.Waypoints[0].Airport).To(Equal("XIY"))
|
||||||
|
// Expect(schedule.Waypoints[0].DepartureTime).To(Equal("0020(16APR)"))
|
||||||
|
// Expect(schedule.Waypoints[1].Airport).To(Equal("CGD"))
|
||||||
|
// })
|
||||||
|
// })
|
||||||
|
|
||||||
|
// })
|
||||||
|
|||||||
Reference in New Issue
Block a user