fossil 0.4.20 → 0.4.22

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.20
1
+ 0.4.22
data/fossil.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{fossil}
8
- s.version = "0.4.20"
8
+ s.version = "0.4.22"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Patrick Lardin, Daniel Sudol"]
@@ -36,14 +36,32 @@ class TripLeg < Sequel::Model(:'trip legs')
36
36
  proc {
37
37
  if !arrival_icao.blank?
38
38
  Airport.filter(:'icao'=> arrival_icao)
39
+ elsif !arrival_airport_id.blank? and !arrival_ap_prefix.blank?
40
+ Airport.filter(:'airport id prefix'.like("%#{arrival_ap_prefix}"), :'airport id'.like("%#{arrival_airport_id}"))
39
41
  else
42
+ Airport.filter(:'icao'=>'FAKE').limit(1)
43
+ end
44
+ }
45
+
46
+ many_to_one :departure_airport, :class=>:Airport, :key=>nil, :dataset=>
47
+ proc {
48
+ if !arrival_icao.blank?
49
+ Airport.filter(:'icao'=> arrival_icao)
50
+ elsif !arrival_airport_id.blank? and !arrival_ap_prefix.blank?
40
51
  Airport.filter(:'airport id prefix'.like("%#{arrival_ap_prefix}"), :'airport id'.like("%#{arrival_airport_id}"))
52
+ else
53
+ Airport.filter(:'icao'=>'FAKE').limit(1)
41
54
  end
42
55
  }
43
56
 
44
57
  many_to_one :departure_airport, :class=>:Airport, :key=>:departure_icao, :primary_key=>:icao #:key=>nil, :dataset=>proc{ ref_method = self[:'depart-icao/iata/id']; case ref_method; when 1 then Airport.filter(:'icao'=>self[:'departure icao']); when 2 then Airport.filter(:'iata'=>self[:'departure iata']); else Airport.filter(:'airport id prefix'.like("%#{self[:'depart a/p prefix']}"), :'airport id'.like("%#{self[:'depart airport id']}")); end }
58
+
59
+ many_to_one :departure_fuel_vendor, :class=>:Vendor, :key=>:dep_fuel_vendor, :primary_key=>:'vendor id'
60
+ many_to_one :arrival_fuel_vendor, :class=>:Vendor, :key=>:arr_fuel_vendor, :primary_key=>:'vendor id'
61
+
45
62
  many_to_one :alternate_arrival_airport, :class=>:Airport, :key=>nil, :dataset=>proc{ Airport.filter(:'airport id prefix'.like("%#{self[:'arr alt prefix']}"), :'airport id'.like( "%#{self[:'arr alt id']}"))}
46
63
  many_to_one :alternate_departure_airport, :class=>:Airport, :key=>nil, :dataset=>proc{ Airport.filter(:'airport id prefix'.like("%#{self[:'dep alt prefix']}"), :'airport id'.like( "%#{self[:'dep alt id']}"))}
64
+
47
65
  many_to_one :departure_fbo_comment_value, :class=>:Comment, :key=>nil, :dataset=>proc { Comment.filter( :"kid - date"=>self[:"kid - date"], :"kid - time"=>self[:"kid - time"], :"kid - user"=>self[:"kid - user"], :"kid - mult"=>self[:"kid - mult"], :"kid - comm"=>43) }
48
66
  many_to_one :arrival_fbo_comment_value, :class=>:Comment, :key=>nil, :dataset=>proc { Comment.filter( :"kid - date"=>self[:"kid - date"], :"kid - time"=>self[:"kid - time"], :"kid - user"=>self[:"kid - user"], :"kid - mult"=>self[:"kid - mult"], :"kid - comm"=>34) }
49
67
  many_to_one :departure_catering_comment, :class=>:Comment, :key=>nil, :dataset=>proc { Comment.filter( :"kid - date"=>self[:"kid - date"], :"kid - time"=>self[:"kid - time"], :"kid - user"=>self[:"kid - user"], :"kid - mult"=>self[:"kid - mult"], :"kid - comm"=>37) }
@@ -2,6 +2,65 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
2
 
3
3
  describe TripLeg do
4
4
 
5
+ describe "arrival_airport assoc works" do
6
+ before :all do
7
+ set_fos_db([Airport])
8
+ end
9
+
10
+ it "when there is no arrival_icao" do
11
+ trip_leg = TripLeg.new(:arrival_icao=>'')
12
+ trip_leg.arrival_airport.should == nil
13
+ end
14
+
15
+ it "when there is no arrival_ap_prefix or arrival_airport_id" do
16
+ trip_leg = TripLeg.new(:arrival_icao=>'', :arrival_ap_prefix=>'', :arrival_airport_id=>'')
17
+ trip_leg.arrival_airport.should == nil
18
+ end
19
+
20
+ it "when there is an arrival_icao" do
21
+ trip_leg = TripLeg.new(:arrival_icao=>'KSFO')
22
+ trip_leg.arrival_airport.should_not == nil
23
+ end
24
+
25
+ it "when there is no arrival_icao but there is arrival_ap_prefix and arrival_airport_id" do
26
+ trip_leg = TripLeg.new(:arrival_icao=>'', :arrival_ap_prefix=>'K', :arrival_airport_id=>'SFO')
27
+ trip_leg.arrival_airport.should_not == nil
28
+ end
29
+ end
30
+
31
+ it "ebt_time method produces correct Time with minutes" do
32
+ dept_date_act_gmt = Date.new(2000, 1, 1)
33
+ tl = TripLeg.new(:arrival_date_gmt=>dept_date_act_gmt.to_fos_days, :eta_gmt=>40,
34
+ :dept_date_gmt=>dept_date_act_gmt.to_fos_days, :etd_gmt=>20)
35
+ tl.ebt_time.should == Time.from_minutes(20)
36
+ end
37
+
38
+ describe "departure_airport assoc works" do
39
+ before :all do
40
+ set_fos_db([Airport])
41
+ end
42
+
43
+ it "when there is no arrival_icao" do
44
+ trip_leg = TripLeg.new(:arrival_icao=>'')
45
+ trip_leg.arrival_airport.should == nil
46
+ end
47
+
48
+ it "when there is no arrival_ap_prefix or arrival_airport_id" do
49
+ trip_leg = TripLeg.new(:arrival_icao=>'', :arrival_ap_prefix=>'', :arrival_airport_id=>'')
50
+ trip_leg.arrival_airport.should == nil
51
+ end
52
+
53
+ it "when there is an arrival_icao" do
54
+ trip_leg = TripLeg.new(:arrival_icao=>'KSFO')
55
+ trip_leg.arrival_airport.should_not == nil
56
+ end
57
+
58
+ it "when there is no arrival_icao but there is arrival_ap_prefix and arrival_airport_id" do
59
+ trip_leg = TripLeg.new(:arrival_icao=>'', :arrival_ap_prefix=>'K', :arrival_airport_id=>'SFO')
60
+ trip_leg.arrival_airport.should_not == nil
61
+ end
62
+ end
63
+
5
64
  it "ebt_time method produces correct Time with minutes" do
6
65
  dept_date_act_gmt = Date.new(2000, 1, 1)
7
66
  tl = TripLeg.new(:arrival_date_gmt=>dept_date_act_gmt.to_fos_days, :eta_gmt=>40,
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 4
8
- - 20
9
- version: 0.4.20
8
+ - 22
9
+ version: 0.4.22
10
10
  platform: ruby
11
11
  authors:
12
12
  - Patrick Lardin, Daniel Sudol