fossil 0.5.26 → 0.5.27
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/fossil.gemspec +5 -6
- data/lib/models/trip_leg.rb +10 -5
- data/lib/sequel/fos_dates.rb +8 -1
- data/lib/support/{hash_extentions.rb → core_extensions.rb} +64 -0
- data/spec/core_extensions_spec.rb +59 -0
- data/spec/models/trip_leg_spec.rb +43 -17
- data/spec/sequel/core_patch_spec.rb +22 -22
- data/spec/silly_spec.rb +24 -6
- metadata +6 -7
- data/lib/support/date_extentions.rb +0 -26
- data/spec/hash_extentions_spec.rb +0 -20
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.27
|
data/fossil.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{fossil}
|
8
|
-
s.version = "0.5.
|
8
|
+
s.version = "0.5.27"
|
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"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-02-08}
|
13
13
|
s.description = %q{Access FOS/betrieve db with this Sequel based orm wrapper}
|
14
14
|
s.email = %q{plardin@xojet.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -136,13 +136,12 @@ Gem::Specification.new do |s|
|
|
136
136
|
"lib/sequel/serializer/serializer.rb",
|
137
137
|
"lib/sequel/serializer/xml_serializer.rb",
|
138
138
|
"lib/sequel/sqlite_pervasive_adapter.rb",
|
139
|
-
"lib/support/
|
139
|
+
"lib/support/core_extensions.rb",
|
140
140
|
"lib/support/delegate_method.rb",
|
141
|
-
"lib/support/hash_extentions.rb",
|
142
141
|
"lib/support/number_helper.rb",
|
143
142
|
"spec/be_model_with_values_matcher.rb",
|
144
143
|
"spec/be_model_with_values_matcher_spec.rb",
|
145
|
-
"spec/
|
144
|
+
"spec/core_extensions_spec.rb",
|
146
145
|
"spec/helper_classes.rb",
|
147
146
|
"spec/helper_methods.rb",
|
148
147
|
"spec/models/airport_fbo_spec.rb",
|
@@ -167,7 +166,7 @@ Gem::Specification.new do |s|
|
|
167
166
|
s.rubygems_version = %q{1.3.7}
|
168
167
|
s.summary = %q{Sequel orm wrapper to FOS}
|
169
168
|
s.test_files = [
|
170
|
-
"spec/
|
169
|
+
"spec/core_extensions_spec.rb",
|
171
170
|
"spec/spec_helper.rb",
|
172
171
|
"spec/helper_methods.rb",
|
173
172
|
"spec/be_model_with_values_matcher_spec.rb",
|
data/lib/models/trip_leg.rb
CHANGED
@@ -671,12 +671,18 @@ class TripLeg < Sequel::Model(:'trip legs')
|
|
671
671
|
|
672
672
|
column_view :arrival_date_gmt, :date, :actual_arrival_date_gmt
|
673
673
|
column_view :arriv_time_act_gmt, :time, :actual_arrival_time_gmt
|
674
|
-
|
674
|
+
# Fixed to check if actual fields are populated, on older records these fields are not populated so we can't use them.
|
675
|
+
# Jade Tucker 2/08/2011
|
676
|
+
def actual_arrival_date_time_gmt
|
677
|
+
date = (arr_date_act_gmt > 0 ? arr_date_act_gmt : arrival_date_gmt)
|
678
|
+
DateTime.from_fos_date_time(date, arriv_time_act_gmt)
|
679
|
+
end
|
675
680
|
|
676
681
|
def actual_land_date_time_gmt
|
677
682
|
time = land_time_act_gmt
|
678
683
|
time -= 60*24 if land_time_act_gmt > arriv_time_act_gmt
|
679
|
-
|
684
|
+
date = (arr_date_act_gmt > 0 ? arr_date_act_gmt : arrival_date_gmt)
|
685
|
+
DateTime.from_fos_date_time(date, time)
|
680
686
|
end
|
681
687
|
|
682
688
|
column_view :dept_date_act_local, :date, :actual_departure_date_local
|
@@ -709,14 +715,14 @@ class TripLeg < Sequel::Model(:'trip legs')
|
|
709
715
|
column_view :depart_time_act_home, :time, :actual_departure_time_base
|
710
716
|
column_def_datetime :actual_departure_date_time_base_old, :'dept date act home', :'depart time act home'
|
711
717
|
def actual_departure_date_time_base
|
712
|
-
(actual_departure_date_time_gmt.to_time + (home_tz_gmt_offset/10).hours).to_datetime
|
718
|
+
(actual_departure_date_time_gmt.to_time.utc + (home_tz_gmt_offset/10).hours).to_datetime
|
713
719
|
end
|
714
720
|
|
715
721
|
column_view :arr_date_act_home, :date, :actual_arrival_date_base
|
716
722
|
column_view :arrival_time_act_hom, :time, :actual_arrival_time_base
|
717
723
|
column_def_datetime :actual_arrival_date_time_base_old, :'arr date act home', :'arrival time act hom'
|
718
724
|
def actual_arrival_date_time_base
|
719
|
-
(actual_arrival_date_time_gmt.to_time + (home_tz_gmt_offset/10).hours).to_datetime
|
725
|
+
(actual_arrival_date_time_gmt.to_time.utc + (home_tz_gmt_offset/10).hours).to_datetime
|
720
726
|
end
|
721
727
|
|
722
728
|
column_view :ete, :time
|
@@ -729,7 +735,6 @@ class TripLeg < Sequel::Model(:'trip legs')
|
|
729
735
|
column_view :delay_2_time, :time, :delay_2_duration
|
730
736
|
column_view :ron, :boolean
|
731
737
|
|
732
|
-
|
733
738
|
# get pic or sic or purser for this trip leg. type should be :pic or :sic or :pur
|
734
739
|
def pilot_code(type)
|
735
740
|
crew_leg = pilot_crew(type)
|
data/lib/sequel/fos_dates.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
1
3
|
class Date
|
2
|
-
FOS_JD_OFFSET_DAYS = Date.parse('1899-12-31').jd
|
4
|
+
FOS_JD_OFFSET_DAYS = Date.parse('1899-12-31').jd unless defined?(FOS_JD_OFFSET_DAYS)
|
3
5
|
|
4
6
|
def self.from_fos_days(days)
|
5
7
|
self.jd(FOS_JD_OFFSET_DAYS + days)
|
@@ -122,4 +124,9 @@ class DateTime
|
|
122
124
|
def long_view
|
123
125
|
self.strftime('%B %d, %Y %H:%M')
|
124
126
|
end
|
127
|
+
|
128
|
+
# Converts self to a Ruby Date object; time portion is discarded
|
129
|
+
def to_date
|
130
|
+
::Date.new(year, month, day)
|
131
|
+
end unless method_defined?(:to_date)
|
125
132
|
end
|
@@ -1,4 +1,42 @@
|
|
1
1
|
require 'json'
|
2
|
+
|
3
|
+
class Integer
|
4
|
+
def as_cost
|
5
|
+
self/100.0
|
6
|
+
end
|
7
|
+
|
8
|
+
def in_hundredths
|
9
|
+
self.to_f.in_hundredths
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
class Float
|
14
|
+
def as_cost
|
15
|
+
self/100.0
|
16
|
+
end
|
17
|
+
|
18
|
+
def in_hundredths
|
19
|
+
return 0 if self == 0
|
20
|
+
val = "#{self/60.0}.#{((100.0*(self.modulo(60.0)))/60.0).to_s.rjust(2, '0')}"
|
21
|
+
BigDecimal.mode(BigDecimal::ROUND_MODE, BigDecimal::ROUND_HALF_EVEN)
|
22
|
+
BigDecimal.new(val, 2).round(2).to_f
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
class Range
|
27
|
+
def split_by_step(step)
|
28
|
+
current_min = min
|
29
|
+
arr = []
|
30
|
+
while (current_min + step) <= max
|
31
|
+
current_max = current_min + step
|
32
|
+
arr << (current_min..current_max)
|
33
|
+
current_min = (current_max + 1)
|
34
|
+
end
|
35
|
+
arr << (current_min..max) unless current_min > max
|
36
|
+
arr
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
2
40
|
class Hash
|
3
41
|
XML_TYPE_NAMES =
|
4
42
|
{
|
@@ -69,4 +107,30 @@ class Hash
|
|
69
107
|
end
|
70
108
|
self
|
71
109
|
end
|
110
|
+
|
111
|
+
def diff(other)
|
112
|
+
self.keys.inject({}) do |memo, key|
|
113
|
+
unless self[key] == other[key]
|
114
|
+
memo[key] = other[key]
|
115
|
+
end
|
116
|
+
memo
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
120
|
+
|
121
|
+
class Numeric
|
122
|
+
def minutes
|
123
|
+
self * 60
|
124
|
+
end
|
125
|
+
alias :minute :minutes
|
126
|
+
|
127
|
+
def hours
|
128
|
+
self * 3600
|
129
|
+
end
|
130
|
+
alias :hour :hours
|
131
|
+
|
132
|
+
def days
|
133
|
+
self * 24.hours
|
134
|
+
end
|
135
|
+
alias :day :days
|
72
136
|
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/spec_helper'
|
2
|
+
|
3
|
+
describe Hash do
|
4
|
+
it "limit_to_keys should limit keys in hash" do
|
5
|
+
h = {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
6
|
+
h.limit_to_keys([:bro1,:bro2]).should == {:bro1=>'me',:bro2=>'rob'}
|
7
|
+
h.should == {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
8
|
+
end
|
9
|
+
|
10
|
+
it "limit_to_keys! should destructively limit keys in hash" do
|
11
|
+
h = {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
12
|
+
h.limit_to_keys!([:bro1,:bro2]).should == {:bro1=>'me',:bro2=>'rob'}
|
13
|
+
h.should == {:bro1=>'me',:bro2=>'rob'}
|
14
|
+
end
|
15
|
+
|
16
|
+
it "soft deletes" do
|
17
|
+
h = {:dan=>1,:eric=>2}
|
18
|
+
h.soft_delete(:dan).should == {:eric=>2}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe Integer do
|
23
|
+
it "should return the number divided by 100 as a float" do
|
24
|
+
i = 1000043
|
25
|
+
i.as_cost.should == 10000.43
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should return the number in hundredths" do
|
29
|
+
i = 10343
|
30
|
+
i.in_hundredths.should == 172.38
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
describe Float do
|
35
|
+
it "should return the number divided by 100" do
|
36
|
+
i = 1000043.0
|
37
|
+
i.as_cost.should == 10000.430
|
38
|
+
end
|
39
|
+
|
40
|
+
it "should return the number in hundredths" do
|
41
|
+
i = 10343.56
|
42
|
+
i.in_hundredths.should == 172.39
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
describe Range do
|
47
|
+
it "method split_by_step creates ranges out of original range by step" do
|
48
|
+
range = 0..30
|
49
|
+
range.split_by_step(10).should == [0..10,11..21,22..30]
|
50
|
+
range = 1..101
|
51
|
+
range.split_by_step(25).should == [1..26,27..52,53..78,79..101]
|
52
|
+
range = 0..20
|
53
|
+
range.split_by_step(20).should == [0..20]
|
54
|
+
range = 1..2
|
55
|
+
range.split_by_step(3).should == [1..2]
|
56
|
+
range = 1..1
|
57
|
+
range.split_by_step(10).should == [1..1]
|
58
|
+
end
|
59
|
+
end
|
@@ -78,32 +78,58 @@ describe TripLeg do
|
|
78
78
|
tl.actual_takeoff_date_time_gmt.should == DateTime.new(1900, 1, 1, 0, 40, 0)
|
79
79
|
end
|
80
80
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
81
|
+
|
82
|
+
describe 'actual_land_date_time_gmt' do
|
83
|
+
it "actual_landing_date_time dates are before arr_date_act_gmt if on time time is greater than landing time" do
|
84
|
+
tl = TripLeg.new(:arr_date_act_gmt=> Date.new(1900, 1, 2).to_fos_days,
|
85
|
+
:land_time_act_gmt=> 1420,
|
86
|
+
:arriv_time_act_gmt=> 20)
|
87
|
+
tl.actual_land_date_time_gmt.should == DateTime.new(1900, 1, 1, 23, 40, 0)
|
88
|
+
end
|
89
|
+
|
90
|
+
it "actual landing date_time dates are the same as arr_date_act_gmt if on time time is NOT greater than landing time" do
|
91
|
+
tl = TripLeg.new(:arr_date_act_gmt=> Date.new(1900, 1, 2).to_fos_days,
|
92
|
+
:land_time_act_gmt=> 20,
|
93
|
+
:arriv_time_act_gmt=> 40)
|
94
|
+
tl.actual_land_date_time_gmt.should == DateTime.new(1900, 1, 2, 0, 20, 0)
|
95
|
+
end
|
85
96
|
end
|
86
97
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
98
|
+
describe 'actual_arrival_date_time_gmt' do
|
99
|
+
it "has the old 'arrival date - gmt' field set" do
|
100
|
+
tl = TripLeg.new(:arr_date_act_gmt=> 0, # old field not set
|
101
|
+
:arrival_date_gmt=> 2, # should use this field instead
|
102
|
+
:arriv_time_act_gmt=> 10)
|
103
|
+
tl.actual_arrival_date_time_gmt.should == DateTime.new(1900, 1, 2, 0, 10, 0)
|
104
|
+
end
|
105
|
+
|
106
|
+
it "has the new 'arr date act gmt' field set" do
|
107
|
+
tl = TripLeg.new(:arr_date_act_gmt=> 2, # old field is set, so use this one
|
108
|
+
:arrival_date_gmt=> 0, # new field not set
|
109
|
+
:arriv_time_act_gmt=> 10)
|
110
|
+
tl.actual_arrival_date_time_gmt.should == DateTime.new(1900, 1, 2, 0, 10, 0)
|
111
|
+
end
|
91
112
|
end
|
92
113
|
|
93
|
-
it "
|
94
|
-
|
95
|
-
arriv_time_act_gmt = 1420
|
114
|
+
it "actual_arrival_date_time_base are correctly calculating the tz offset" do
|
115
|
+
# this makes an actual_arrival_date_time_gmt date of: 1900-01-02 23:40:00
|
116
|
+
arr_date_act_gmt, arriv_time_act_gmt = Date.new(1900, 1, 2).to_fos_days , 1420
|
96
117
|
home_tz_gmt_offset = -70
|
97
|
-
|
118
|
+
# home_tz_gmt_offset should make actual_arrival_date_time_base of: 1900-01-02 16:40:00
|
119
|
+
tl = TripLeg.new(:arr_date_act_gmt => arr_date_act_gmt,
|
120
|
+
:arriv_time_act_gmt => arriv_time_act_gmt,
|
98
121
|
:home_tz_gmt_offset => home_tz_gmt_offset)
|
99
122
|
tl.actual_arrival_date_time_base.should == DateTime.new(1900, 1, 2, 16, 40, 0)
|
100
123
|
end
|
101
124
|
|
102
|
-
|
103
|
-
|
104
|
-
|
125
|
+
|
126
|
+
it "actual_departure_date_time_base are correctly calculating the tz offset" do
|
127
|
+
# this makes an actual_arrival_date_time_gmt date of: 1900-01-02 23:40:00
|
128
|
+
dept_date_act_gmt, dept_time_act_gmt = Date.new(1900, 1, 2).to_fos_days , 1420
|
105
129
|
home_tz_gmt_offset = -70
|
106
|
-
|
130
|
+
# home_tz_gmt_offset should make actual_arrival_date_time_base of: 1900-01-02 16:40:00
|
131
|
+
tl = TripLeg.new(:dept_date_act_gmt => dept_date_act_gmt,
|
132
|
+
:dept_time_act_gmt => dept_time_act_gmt,
|
107
133
|
:home_tz_gmt_offset=>home_tz_gmt_offset)
|
108
134
|
tl.actual_departure_date_time_base.should == DateTime.new(1900, 1, 2, 16, 40, 0)
|
109
135
|
end
|
@@ -190,7 +216,7 @@ describe TripLeg do
|
|
190
216
|
end
|
191
217
|
end
|
192
218
|
|
193
|
-
|
219
|
+
|
194
220
|
## NEED TO REMOVE, TESTS SHOULD BE IN FlightLogExpense spec
|
195
221
|
# describe "fuel passdown data columns" do
|
196
222
|
#
|
@@ -2,37 +2,37 @@ require File.dirname(__FILE__) + '/../spec_helper'
|
|
2
2
|
|
3
3
|
describe Sequel do
|
4
4
|
|
5
|
-
|
6
|
-
# before :each do
|
7
|
-
# @db = Sequel.fos('fos')
|
8
|
-
# end
|
9
|
-
#
|
10
|
-
# it "instantiates a fos/pervasive db from an odbc name" do
|
11
|
-
# @db.should_not be nil
|
12
|
-
# end
|
13
|
-
#
|
14
|
-
# it "actually works to see a fos table" do
|
15
|
-
# TripLeg.db=@db
|
16
|
-
# TripLeg.first.should_not be nil
|
17
|
-
# end
|
18
|
-
# end
|
19
|
-
|
20
|
-
describe "has method 'fos_dbr' that" do
|
5
|
+
describe "has method 'fos' that" do
|
21
6
|
before :each do
|
22
|
-
|
23
|
-
@db = Sequel.fos_dbr(hash)
|
7
|
+
@db = Sequel.fos('fos')
|
24
8
|
end
|
25
9
|
|
26
|
-
it "instantiates
|
10
|
+
it "instantiates a fos/pervasive db from an odbc name" do
|
27
11
|
@db.should_not be nil
|
28
12
|
end
|
29
13
|
|
30
|
-
it "actually
|
31
|
-
|
32
|
-
|
14
|
+
it "actually works to see a fos table" do
|
15
|
+
TripLeg.db=@db
|
16
|
+
TripLeg.first.should_not be nil
|
33
17
|
end
|
34
18
|
end
|
35
19
|
|
20
|
+
# describe "has method 'fos_dbr' that" do
|
21
|
+
# before :each do
|
22
|
+
# hash = {:host=>"localhost", :user=>'root', :password=>'', :database=>'test'}
|
23
|
+
# @db = Sequel.fos_dbr(hash)
|
24
|
+
# end
|
25
|
+
#
|
26
|
+
# it "instantiates dbr/mysql db from hash of params name" do
|
27
|
+
# @db.should_not be nil
|
28
|
+
# end
|
29
|
+
#
|
30
|
+
# it "actually loaded the dbr files" do
|
31
|
+
# [Trip,Quote].each{|model| model.db=@db}
|
32
|
+
# Trip.eager_graph(:quote).sql.should =~ /(`quote`.`id` = `trips`.`quote_id`)/
|
33
|
+
# end
|
34
|
+
# end
|
35
|
+
|
36
36
|
# it "set_db method finds sets db on all Sequel models" do
|
37
37
|
# db = Sequel.fos('fos')
|
38
38
|
# Sequel.set_db db
|
data/spec/silly_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
require_relative '../lib/fossil'
|
2
2
|
require 'logger'
|
3
3
|
require 'pp'
|
4
4
|
|
@@ -7,13 +7,26 @@ require 'pp'
|
|
7
7
|
|
8
8
|
DB = Sequel.fos('fosprod', :loggers=>[Logger.new($stdout)])
|
9
9
|
#DB = Sequel.fos('flyos', :loggers=>[Logger.new($stdout)])
|
10
|
-
|
10
|
+
TripLeg.db = DB
|
11
|
+
#p TripLeg.filter(:eta_gmt=>0).count
|
12
|
+
#p TripLeg.filter(:arriv_time_act_gmt=>0).count
|
13
|
+
t = TripLeg.first(:trip_number=>83106,:leg_number=>1)
|
14
|
+
#p t.actual_departure_date_time_gmt.to_time
|
15
|
+
#p t.actual_departure_date_time_gmt.to_time.utc
|
16
|
+
#pp t.fill_hash(
|
17
|
+
# [:actual_departure_date_time_gmt,
|
18
|
+
# :actual_arrival_date_time_gmt,
|
19
|
+
# :actual_departure_date_time_base,
|
20
|
+
# :actual_arrival_date_time_base
|
21
|
+
# ]
|
22
|
+
#)
|
11
23
|
|
12
24
|
#date = Date.today - 1
|
25
|
+
#p date
|
13
26
|
#pp CrewDuty.find_crew_duty_in_time_range(date, date).collect{|v| [v.duty_start_time.to_s, v.duty_end_time.to_s, v.amended, v.amended_date, v.verified_date] }
|
14
|
-
|
15
|
-
|
16
|
-
|
27
|
+
#[CrewDuty].each{|m| m.db=DB}
|
28
|
+
#c = CrewDuty.filter(:kid_user=>'DEMO').first
|
29
|
+
#c.update(:risk=>2)
|
17
30
|
#[Personnel,ACQualification,Code].each{|m| m.db=DB}
|
18
31
|
#p ACQualification.first
|
19
32
|
#p Personnel.first(:employee_id=>'COXD').ac_qualifications.find{|ac| ac.aircraft_type_id='C750'}
|
@@ -38,7 +51,12 @@ p CrewDuty.count
|
|
38
51
|
#p AirportFbo.filter(:icao=>'KSFO').count
|
39
52
|
#DB.execute('Update "trip legs" set "lunch comment" = \'hi\' where "trip number" = 83100 and "leg number" = 3')
|
40
53
|
#DB.execute('Update "trip legs" set "pax count" = 4 where "trip number" = 62 and "leg number" = 1 ')
|
41
|
-
#tl = TripLeg.filter(:trip_number=>
|
54
|
+
#tl = TripLeg.filter(:trip_number=>69012,:leg_number=>1).first#eager_graph(:arrival_fbo).all.first
|
55
|
+
#p tl.actual_arrival_date_time_gmt
|
56
|
+
#date = TripLeg.filter(:arr_date_act_gmt=>0).filter{:verify_date >0}.order(:kid_date).last.kid_date # :arrival_date_gmt
|
57
|
+
#p Date.from_fos_days(date).to_s
|
58
|
+
#p TripLeg.filter(:arr_date_act_gmt=>0).count # :arrival_date_gmt
|
59
|
+
#p TripLeg.count # :arrival_date_gmt
|
42
60
|
#p tl.fos_id
|
43
61
|
#p tl.pax_count
|
44
62
|
#tl2 = TripLeg.filter(tl.pk_hash.soft_delete(:'kid - user')).filter(:kid_user.like("%#{tl.kid_user}%")).first
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 5
|
8
|
-
-
|
9
|
-
version: 0.5.
|
8
|
+
- 27
|
9
|
+
version: 0.5.27
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Patrick Lardin, Daniel Sudol
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-
|
17
|
+
date: 2011-02-08 00:00:00 -08:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -187,13 +187,12 @@ files:
|
|
187
187
|
- lib/sequel/serializer/serializer.rb
|
188
188
|
- lib/sequel/serializer/xml_serializer.rb
|
189
189
|
- lib/sequel/sqlite_pervasive_adapter.rb
|
190
|
-
- lib/support/
|
190
|
+
- lib/support/core_extensions.rb
|
191
191
|
- lib/support/delegate_method.rb
|
192
|
-
- lib/support/hash_extentions.rb
|
193
192
|
- lib/support/number_helper.rb
|
194
193
|
- spec/be_model_with_values_matcher.rb
|
195
194
|
- spec/be_model_with_values_matcher_spec.rb
|
196
|
-
- spec/
|
195
|
+
- spec/core_extensions_spec.rb
|
197
196
|
- spec/helper_classes.rb
|
198
197
|
- spec/helper_methods.rb
|
199
198
|
- spec/models/airport_fbo_spec.rb
|
@@ -245,7 +244,7 @@ signing_key:
|
|
245
244
|
specification_version: 3
|
246
245
|
summary: Sequel orm wrapper to FOS
|
247
246
|
test_files:
|
248
|
-
- spec/
|
247
|
+
- spec/core_extensions_spec.rb
|
249
248
|
- spec/spec_helper.rb
|
250
249
|
- spec/helper_methods.rb
|
251
250
|
- spec/be_model_with_values_matcher_spec.rb
|
@@ -1,26 +0,0 @@
|
|
1
|
-
require 'date'
|
2
|
-
|
3
|
-
class DateTime
|
4
|
-
# Converts self to a Ruby Date object; time portion is discarded
|
5
|
-
def to_date
|
6
|
-
::Date.new(year, month, day)
|
7
|
-
end unless method_defined?(:to_date)
|
8
|
-
end
|
9
|
-
|
10
|
-
|
11
|
-
class Numeric
|
12
|
-
def minutes
|
13
|
-
self * 60
|
14
|
-
end
|
15
|
-
alias :minute :minutes
|
16
|
-
|
17
|
-
def hours
|
18
|
-
self * 3600
|
19
|
-
end
|
20
|
-
alias :hour :hours
|
21
|
-
|
22
|
-
def days
|
23
|
-
self * 24.hours
|
24
|
-
end
|
25
|
-
alias :day :days
|
26
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/spec_helper'
|
2
|
-
|
3
|
-
describe "hash extentions" do
|
4
|
-
it "limit_to_keys should limit keys in hash" do
|
5
|
-
h = {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
6
|
-
h.limit_to_keys([:bro1,:bro2]).should == {:bro1=>'me',:bro2=>'rob'}
|
7
|
-
h.should == {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
8
|
-
end
|
9
|
-
|
10
|
-
it "limit_to_keys! should destructively limit keys in hash" do
|
11
|
-
h = {:bro1=>'me',:bro2=>'rob',:bro3=>'eric'}
|
12
|
-
h.limit_to_keys!([:bro1,:bro2]).should == {:bro1=>'me',:bro2=>'rob'}
|
13
|
-
h.should == {:bro1=>'me',:bro2=>'rob'}
|
14
|
-
end
|
15
|
-
|
16
|
-
it "soft deletes" do
|
17
|
-
h = {:dan=>1,:eric=>2}
|
18
|
-
h.soft_delete(:dan).should == {:eric=>2}
|
19
|
-
end
|
20
|
-
end
|