Commit dd4dc5dac9ca52c52e6e0d3b50b6a025577216de

Authored by Andrew Kane
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})"]