schema_extractor 0.1.2 → 0.2.0

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
- SHA1:
3
- metadata.gz: 853198d9e449ab13cfc545b10593d37b71a75dcd
4
- data.tar.gz: 78f4502390ff796bbff3f3dfffad9ac234776db9
2
+ SHA256:
3
+ metadata.gz: a4a525a3f9a7ce3f2350a80b03fa7d9fcd56e3c9338da5f8117c2981ab3ed379
4
+ data.tar.gz: '088f501d3efff59039eb5e09af460205c0855530007f99fb38fa107d388dcf71'
5
5
  SHA512:
6
- metadata.gz: dd0a6cffe2f5a33bb4dcb676bc68a5ee3e94ba9799714867f680bdc0091c43db02e6e91367b1f8b05aea48ca8541e2faf6fe2dd5a7c042ed794078453e8086cf
7
- data.tar.gz: ce7d61c4d418d87c72ea1dddb1e42070f0f968dd65b3fa7ae0711d01b3de536007cbec14d5f3fbc0f4adaca60a3017efc34893390037c634a39cf75275c57c48
6
+ metadata.gz: 57a3e4e3c56b8df7fb5319e47657b28719ff2b60a701567cbf593a800ad19972dbe2def7552d7887bbfe892735a7e708b027752f4c8cf398aa9c75e08255a4a9
7
+ data.tar.gz: 3db02fd9ea938ac9bf432f5c60982dce25b1829660761a2f2c042f86a559aa7c5d90fd3433cf2d6c461bbbc1c9d572ceec117c4efd0a9618b3b5fab3ae35b854
@@ -7,6 +7,7 @@ module SchemaExtractor
7
7
  class InvalidNullableValueError < StandardError; end
8
8
 
9
9
  TYPES = %i[
10
+ boolean
10
11
  date
11
12
  datetime
12
13
  decimal
@@ -31,6 +31,8 @@ module SchemaExtractor
31
31
 
32
32
  def bq_type(f)
33
33
  case f.type
34
+ when :boolean
35
+ "BOOL"
34
36
  when :decimal, :float
35
37
  "FLOAT"
36
38
  when :integer
@@ -49,6 +49,9 @@ module SchemaExtractor
49
49
  end
50
50
 
51
51
  def detect_default_value(row)
52
+ if !row["Default"].nil? && detect_type(row) == :boolean
53
+ return row["Default"] == 0 ? false : true
54
+ end
52
55
  row["Default"]
53
56
  end
54
57
 
@@ -62,6 +65,8 @@ module SchemaExtractor
62
65
 
63
66
  def detect_type(row)
64
67
  case row["Type"]
68
+ when /^tinyint\(1\)$/
69
+ :boolean
65
70
  when /^date$/
66
71
  :date
67
72
  when /^datetime$/
@@ -1,3 +1,3 @@
1
1
  module SchemaExtractor
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_extractor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - nownabe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-22 00:00:00.000000000 Z
11
+ date: 2019-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -128,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
128
128
  version: '0'
129
129
  requirements: []
130
130
  rubyforge_project:
131
- rubygems_version: 2.6.13
131
+ rubygems_version: 2.7.6
132
132
  signing_key:
133
133
  specification_version: 4
134
134
  summary: Extract DB schema as output as specific format.