Commit dd4dc5dac9ca52c52e6e0d3b50b6a025577216de
1 parent
39570924
Exists in
sqlite
Raise errors for unsupported options
Showing
1 changed file
with
6 additions
and
2 deletions
Show diff stats
lib/groupdate/magic.rb
@@ -78,6 +78,10 @@ module Groupdate | @@ -78,6 +78,10 @@ module Groupdate | ||
78 | ["(DATE_TRUNC('#{field}', (#{column}::timestamptz - INTERVAL '#{day_start} second') AT TIME ZONE ?) + INTERVAL '#{day_start} second') AT TIME ZONE ?", time_zone, time_zone] | 78 | ["(DATE_TRUNC('#{field}', (#{column}::timestamptz - INTERVAL '#{day_start} second') AT TIME ZONE ?) + INTERVAL '#{day_start} second') AT TIME ZONE ?", time_zone, time_zone] |
79 | end | 79 | end |
80 | when "SQLite" | 80 | when "SQLite" |
81 | + raise Groupdate::Error, "Time zones not supported for adapter" unless self.time_zone.utc_offset.zero? | ||
82 | + raise Groupdate::Error, "day_start not supported for adapter" unless day_start.zero? | ||
83 | + raise Groupdate::Error, "week_start not supported for adapter" unless week_start == 6 | ||
84 | + | ||
81 | if field == :week | 85 | if field == :week |
82 | ["strftime('%%Y-%%m-%%d 00:00:00 UTC', #{column}, '-6 days', 'weekday 0')"] | 86 | ["strftime('%%Y-%%m-%%d 00:00:00 UTC', #{column}, '-6 days', 'weekday 0')"] |
83 | else | 87 | else |
@@ -102,11 +106,11 @@ module Groupdate | @@ -102,11 +106,11 @@ module Groupdate | ||
102 | when :month | 106 | when :month |
103 | "%Y-%m-01 00:00:00 UTC" | 107 | "%Y-%m-01 00:00:00 UTC" |
104 | when :quarter | 108 | when :quarter |
105 | - raise "Quarter not supported for adapter" | 109 | + raise Groupdate::Error, "Quarter not supported for adapter" |
106 | when :year | 110 | when :year |
107 | "%Y-01-01 00:00:00 UTC" | 111 | "%Y-01-01 00:00:00 UTC" |
108 | else | 112 | else |
109 | - raise "Unrecognized grouping: #{field}." | 113 | + raise Groupdate::Error, "Unrecognized grouping: #{field}." |
110 | end | 114 | end |
111 | 115 | ||
112 | ["strftime('#{format.gsub(/%/, '%%')}', #{column})"] | 116 | ["strftime('#{format.gsub(/%/, '%%')}', #{column})"] |