From b7d4892741f5b98a45a6a7660e6f174106b02dd7 Mon Sep 17 00:00:00 2001 From: Alban Peignier Date: Tue, 3 Apr 2018 14:58:47 +0200 Subject: Add GTFS::Time and use it to compute day offset for VehicleJourneys. Refs #6368 --- spec/lib/gtfs/time_spec.rb | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 spec/lib/gtfs/time_spec.rb (limited to 'spec/lib') diff --git a/spec/lib/gtfs/time_spec.rb b/spec/lib/gtfs/time_spec.rb new file mode 100644 index 000000000..540d7cc79 --- /dev/null +++ b/spec/lib/gtfs/time_spec.rb @@ -0,0 +1,27 @@ +require "rails_helper" + +RSpec.describe GTFS::Time do + + it "returns an UTC Time with given H:M:S" do + expect(GTFS::Time.parse("14:29:00").time).to eq(Time.parse("2000-01-01 14:29:00 +00")) + end + + it "support hours with a single number" do + expect(GTFS::Time.parse("4:29:00").time).to eq(Time.parse("2000-01-01 04:29:00 +00")) + end + + it "return nil for invalid format" do + expect(GTFS::Time.parse("abc")).to be_nil + end + + it "removes 24 hours after 23:59:59" do + expect(GTFS::Time.parse("25:29:00").time).to eq(Time.parse("2000-01-01 01:29:00 +00")) + end + + it "returns a day_offset for each 24 hours turn" do + expect(GTFS::Time.parse("10:00:00").day_offset).to eq(0) + expect(GTFS::Time.parse("30:00:00").day_offset).to eq(1) + expect(GTFS::Time.parse("50:00:00").day_offset).to eq(2) + end + +end -- cgit v1.2.3