slacker 1.0.21 → 1.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cc75a04a71cac20a85db873f764cb879490a3bfb
4
- data.tar.gz: cc720bd527876d7807a04c1fe4ea97a9d9375856
3
+ metadata.gz: b507a133716644662bba56720b5d50c017a782bb
4
+ data.tar.gz: c4005f99666c04909f6ddc791ed4b1c103345625
5
5
  SHA512:
6
- metadata.gz: 5078a36cafbb7e0847418eecf06c3606ea708f504b271734a48f3c2a760970d987550c0ed3c6f99e28e08b2b693afe50fe30d3eb110801721c9dc526e88da6d6
7
- data.tar.gz: ee08670c7c6e9df7aac8f76ecec23e426074b2e673a52df809823b6e84177c50cdf7a00e2be51b9b5f58762d444bc160381614d358d5d731ba5a05dcc30544f0
6
+ metadata.gz: da629384c0f0c91a6d9ba660c882591b00f7250cc6ab791290a6638a5dc91e3ccb9937c8043c212c4f24ba665b7425f20cd4c6f91f32ec953dcd3b66ce9347f0
7
+ data.tar.gz: b236698f107d182f1cb80a6e22f3a3a9209145c71870760afc84e43e3292118acc76714695ba757d40f4ba72484dbb2706344e7e2a2f87d8dfe87dbad7847564
@@ -85,6 +85,8 @@ EOF
85
85
  configure_db_odbc
86
86
  when TINYTDS_DRIVER
87
87
  configure_db_tiny_tds
88
+ else
89
+ raise RuntimeError, "Unknown driver \"#{@configuration.db_driver}\" used in database configuration; Supported drivers: \"odbc\", \"tiny_tds\"."
88
90
  end
89
91
  configure_rspec
90
92
  configure_misc
@@ -1,9 +1,8 @@
1
1
  require 'csv'
2
+ require 'time'
2
3
 
3
4
  module Slacker
4
- DATE_FORMAT = "%m/%d/%Y"
5
- DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%S'
6
-
5
+
7
6
  class QueryResultMatcher
8
7
  def initialize(golden_master)
9
8
  @golden_master = golden_master
@@ -100,13 +99,16 @@ module Slacker
100
99
  elsif master_val.kind_of?(String)
101
100
  case subject_val
102
101
  when ODBC::TimeStamp
103
- (!!Time.strptime(master_val, DATE_FORMAT) rescue false) && Time.strptime(master_val, DATE_FORMAT) == ODBC::to_time(subject_val)
102
+ # Convert master string value to date-time and compare.
103
+ ((subject_val_time = Time.parse(master_val)) rescue false) && subject_val_time == ODBC::to_time(subject_val)
104
+ # Time is the class returned by tiny_tds when the resultset includes datetime or time.
105
+ when Time
106
+ # Convert master string value to date-time and compare.
107
+ ((subject_val_time = Time.parse(master_val)) rescue false) && subject_val_time == subject_val
104
108
  when Float
105
109
  (!!Float(master_val) rescue false) && Float(master_val) == subject_val
106
110
  when BigDecimal
107
111
  (!!BigDecimal(master_val) rescue false) && BigDecimal(master_val) == BigDecimal(subject_val)
108
- when Time
109
- (!!DateTime.strptime(DateTime.parse(master_val).to_s, DATETIME_FORMAT) rescue false) && DateTime.strptime(DateTime.parse(master_val).to_s, DATETIME_FORMAT) == DateTime.strptime(DateTime.parse(subject_val.to_s).to_s, DATETIME_FORMAT)
110
112
  else
111
113
  subject_val.to_s == master_val.to_s
112
114
  end
@@ -1,3 +1,3 @@
1
1
  module Slacker
2
- VERSION = "1.0.21"
2
+ VERSION = "1.0.22"
3
3
  end
@@ -1,3 +1,3 @@
1
1
  "Field 1","Field_2","b"
2
2
  12,,""
3
- "test string",01/30/2011,8.9
3
+ "test string",2011-01-30,8.9
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slacker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.21
4
+ version: 1.0.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vassil Kovatchev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-21 00:00:00.000000000 Z
11
+ date: 2018-03-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler