Module: GS1::Validations::DateValidation
- Defined in:
- lib/gs1/validations/date_validation.rb
Overview
Ensures correct date validation.
Instance Method Summary collapse
- #valid_date? ⇒ Boolean
- #valid_format_a?(data) ⇒ Boolean
-
#valid_format_b?(data) ⇒ Boolean
Read more about this date format in the GS1::Extensions::MonthBasedDate class.
- #valid_month_based_date? ⇒ Boolean
- #validate_date(_options = {}) ⇒ Object
- #validate_date_month_based(_options = {}) ⇒ Object
Instance Method Details
#valid_date? ⇒ Boolean
16 17 18 19 20 21 22 23 24 |
# File 'lib/gs1/validations/date_validation.rb', line 16 def valid_date? return true if data.is_a?(::Date) ::Date.parse(data) true rescue TypeError, ArgumentError false end |
#valid_format_a?(data) ⇒ Boolean
32 33 34 |
# File 'lib/gs1/validations/date_validation.rb', line 32 def valid_format_a?(data) valid_date_format?(data, '%y%m%d') end |
#valid_format_b?(data) ⇒ Boolean
Read more about this date format in the GS1::Extensions::MonthBasedDate class.
37 38 39 |
# File 'lib/gs1/validations/date_validation.rb', line 37 def valid_format_b?(data) valid_date_format?(data, '%y%m00') end |
#valid_month_based_date? ⇒ Boolean
26 27 28 29 30 |
# File 'lib/gs1/validations/date_validation.rb', line 26 def valid_month_based_date? return true if data.is_a?(::Date) valid_format_a?(data) || valid_format_b?(data) end |
#validate_date(_options = {}) ⇒ Object
8 9 10 |
# File 'lib/gs1/validations/date_validation.rb', line 8 def validate_date( = {}) errors << 'Invalid date' unless valid_date? end |
#validate_date_month_based(_options = {}) ⇒ Object
12 13 14 |
# File 'lib/gs1/validations/date_validation.rb', line 12 def validate_date_month_based( = {}) errors << 'Invalid date' unless valid_month_based_date? end |