flydata 0.1.8 → 0.1.9

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.
@@ -0,0 +1,47 @@
1
+ -- MySQL dump 10.13 Distrib 5.5.37, for debian-linux-gnu (x86_64)
2
+ --
3
+ -- Host: localhost Database: flydata_sync
4
+ -- ------------------------------------------------------
5
+ -- Server version 5.5.37-0ubuntu0.12.04.1-log
6
+
7
+ /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
8
+ /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
9
+ /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
10
+ /*!40101 SET NAMES utf8 */;
11
+ /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
12
+ /*!40103 SET TIME_ZONE='+00:00' */;
13
+ /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
14
+ /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
15
+ /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
16
+ /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
17
+
18
+ --
19
+ -- Table structure for table `zerofill_table`
20
+ --
21
+
22
+ DROP TABLE IF EXISTS `zerofill_table`;
23
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
24
+ /*!40101 SET character_set_client = utf8 */;
25
+ CREATE TABLE `zerofill_table` (
26
+ `id` int(11) NOT NULL AUTO_INCREMENT,
27
+ `value_int` int(10) unsigned zerofill DEFAULT NULL,
28
+ `value_float` float unsigned zerofill DEFAULT NULL,
29
+ `value_dec` decimal(10,2) unsigned zerofill DEFAULT NULL,
30
+ `value_double` double unsigned zerofill DEFAULT NULL,
31
+ `name` varchar(256) DEFAULT NULL,
32
+ `value_small_int` smallint(5) unsigned DEFAULT NULL,
33
+ PRIMARY KEY (`id`)
34
+ ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1;
35
+ /*!40101 SET character_set_client = @saved_cs_client */;
36
+ /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
37
+
38
+ /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
39
+ /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
40
+ /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
41
+ /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
42
+ /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
43
+ /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
44
+ /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
45
+
46
+ -- Dump completed on 2014-06-26 20:57:42
47
+
@@ -32,6 +32,51 @@ describe RedshiftTableDef do
32
32
  end
33
33
  end
34
34
  end
35
+
36
+ context 'with medium blob column def' do
37
+ context 'when size exceeds max size' do
38
+ let(:column) { {:name=>"col_medium_blob", :type=>"varbinary(16777215)", :default=>nil} }
39
+ it do
40
+ expect(subject).to eq(' "col_medium_blob" varchar(65535) DEFAULT NULL')
41
+ end
42
+ end
43
+ end
44
+
45
+ context 'with unsigned column def' do
46
+ let(:column) { {:name=>"value_small_int", :type=>"int2(5) unsigned", :default=>nil} }
47
+ it do
48
+ expect(subject).to eq(' "value_small_int" int4 DEFAULT NULL')
49
+ end
50
+ end
51
+
52
+ context 'with decimal column def' do
53
+ context 'when precision exceeds max allowed' do
54
+ let(:column) { {:name=>"value", :type=>"numeric(65,30)", :default=>nil} }
55
+ it 'should replace precision with max value' do
56
+ expect(subject).to eq(' "value" numeric(38,30) DEFAULT NULL')
57
+ end
58
+ end
59
+ context 'when scale exceeds max allowed' do #not possible
60
+ let(:column) { {:name=>"value", :type=>"numeric(45,44)", :default=>nil} }
61
+ it 'should replace scale with max value' do
62
+ expect(subject).to eq(' "value" numeric(38,37) DEFAULT NULL')
63
+ end
64
+ end
65
+
66
+ context 'when precision and scale exceeds max allowed (for unsigned)' do
67
+ let(:column) { {:name=>"value", :type=>"numeric(65,44) unsigned", :default=>nil} }
68
+ it 'should replace precision with max value' do
69
+ expect(subject).to eq(' "value" numeric(38,37) DEFAULT NULL')
70
+ end
71
+ end
72
+
73
+ context 'when precision and scale are within limit (for unsigned)' do
74
+ let(:column) { {:name=>"value", :type=>"numeric(37,29) unsigned", :default=>nil} }
75
+ it 'should do nothing' do
76
+ expect(subject).to eq(' "value" numeric(37,29) DEFAULT NULL')
77
+ end
78
+ end
79
+ end
35
80
  end
36
81
 
37
82
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flydata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-23 00:00:00.000000000 Z
12
+ date: 2014-07-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
@@ -155,6 +155,22 @@ dependencies:
155
155
  - - ~>
156
156
  - !ruby/object:Gem::Version
157
157
  version: 0.3.11
158
+ - !ruby/object:Gem::Dependency
159
+ name: slop
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :runtime
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
158
174
  - !ruby/object:Gem::Dependency
159
175
  name: bundler
160
176
  requirement: !ruby/object:Gem::Requirement
@@ -370,6 +386,7 @@ files:
370
386
  - spec/fluent_plugins_spec_helper.rb
371
387
  - spec/fly_data_model_spec.rb
372
388
  - spec/flydata/api/data_entry_spec.rb
389
+ - spec/flydata/cli_spec.rb
373
390
  - spec/flydata/command/sender_spec.rb
374
391
  - spec/flydata/command/sync_spec.rb
375
392
  - spec/flydata/fluent-plugins/in_mysql_binlog_flydata_spec.rb
@@ -383,6 +400,7 @@ files:
383
400
  - spec/flydata/table_def/mysqldump_test_table_enum.dump
384
401
  - spec/flydata/table_def/mysqldump_test_table_multi_pk.dump
385
402
  - spec/flydata/table_def/mysqldump_test_table_no_pk.dump
403
+ - spec/flydata/table_def/mysqldump_test_unsigned.dump
386
404
  - spec/flydata/table_def/redshift_table_def_spec.rb
387
405
  - spec/flydata/util/encryptor_spec.rb
388
406
  - spec/flydata_spec.rb
@@ -403,7 +421,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
403
421
  version: '0'
404
422
  segments:
405
423
  - 0
406
- hash: 1038365382785755967
424
+ hash: 4366584009775605873
407
425
  required_rubygems_version: !ruby/object:Gem::Requirement
408
426
  none: false
409
427
  requirements:
@@ -412,7 +430,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
412
430
  version: '0'
413
431
  requirements: []
414
432
  rubyforge_project:
415
- rubygems_version: 1.8.23
433
+ rubygems_version: 1.8.24
416
434
  signing_key:
417
435
  specification_version: 3
418
436
  summary: FlyData CLI