ddl_parser 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 63d4dbb66ada3b69d10294482aed60ca5b909c2f
4
- data.tar.gz: 09795b90626029ddb528d381f663d28e9a49d3a5
3
+ metadata.gz: 26f392271d3cbfa84aea5054dbb9443153254c72
4
+ data.tar.gz: 51fb85b30b4ddbefd547122f39b21d5a5827d1c6
5
5
  SHA512:
6
- metadata.gz: bd534f8677dcf48f106e1c453a881e17a06f42a98dfc6e09523882484cc90b56f8d1454a8c4771383d19f81c2fd6b19216895b5fd83785be4a4c4d54e9933f1b
7
- data.tar.gz: 5a76d6eef1c476c9fe8b633ab8e085a67304261290c3a91682569d6657ee9ef9f023973a5270f15d47ef1a838b65741e4985eef02700c78f1b90dbb72625899c
6
+ metadata.gz: d625d2c3a66f87b9a02c09fa5fa8193c48ea071814d97c971689a9ab5d40ac2900fdc2aea80e10fc89b0c0a6543424f2a30a9a578bdf19527d8023ae592a63f4
7
+ data.tar.gz: f3380a9731100e2214efb130c368e0a23fc76d640ec455d79d7afcbecf86998fb92b8bdaa0d31013a76180be9dd39085dd8ad407cb5252c32272c5a9f6bb0da1
@@ -44,7 +44,7 @@ class DDLParser::Parser
44
44
  when :alter_table
45
45
  DDLParser::Translator::AlterTable.new(parse_tree)
46
46
  when :create_index
47
- DDLParser::Translator::Createindex.new(parse_tree)
47
+ DDLParser::Translator::CreateIndex.new(parse_tree)
48
48
  else
49
49
  raise "Unknown statement_type #{statement_type}"
50
50
  end
@@ -10,11 +10,15 @@ class DDLParser::Translator::CreateIndex
10
10
  end
11
11
 
12
12
  def table_name
13
- @parse_tree[:table_name]
13
+ @parse_tree.first[:table_name].to_s
14
14
  end
15
15
 
16
- def columns
17
- elements.map{|e|e[:column]}.compact
16
+ def index_name
17
+ @parse_tree.first[:index_name].to_s
18
+ end
19
+
20
+ def fields
21
+ @parse_tree.select{|e|e.has_key?(:field)}.compact
18
22
  end
19
23
 
20
24
  def primary_key
@@ -1,3 +1,3 @@
1
1
  module DDLParser
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'
3
3
  end
@@ -93,6 +93,23 @@ EOF
93
93
  end
94
94
  end
95
95
 
96
+ context 'create index translate' do
97
+ before :each do
98
+ sql = 'CREATE UNIQUE INDEX REPLAN_ADDR_1 ON REPLAN_ADDR (CONSIGNMENT ASCENDING, COLLI DESCENDING)'
99
+ @parser = DDLParser::Parser.new(sql)
100
+ end
101
+
102
+ it 'table name' do
103
+ @parser.translate.table_name.should == 'replan_addr'
104
+ end
105
+ it 'index name' do
106
+ @parser.translate.index_name.should == 'replan_addr_1'
107
+ end
108
+ it 'columns' do
109
+ @parser.translate.fields.should == [{:field=>"consignment", :sort_id=>"ascending"}, {:field=>"colli", :sort_id=>"descending"}]
110
+ end
111
+
112
+ end
96
113
 
97
114
  context 'report errors' do
98
115
  it 'misses right parant' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddl_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rasmus Bergholdt
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-07 00:00:00.000000000 Z
11
+ date: 2014-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parslet