condition 0.0.16 → 0.0.17
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 +4 -4
- data/README.md +3 -0
- data/condition.gemspec +1 -0
- data/lib/condition/param.rb +11 -2
- data/lib/condition/reader/convert_sheet.rb +17 -0
- data/lib/condition/reader/redis_reader.rb +16 -0
- data/lib/condition/version.rb +1 -1
- data/spec/condition_spec.rb +42 -0
- data/spec/spec_helper.rb +4 -0
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c660ebf970ed4d07d0cb2c17f663c26d957f5e3c
|
4
|
+
data.tar.gz: 80508516454670dc5eb73a1e5c9db3f945519226
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 038592f544ab29b35d7edba60c2e22fce16d18e78cf2474f13a5b637707b5f5467b612a84b2492b3847c02b48f84a0bab8c98efd2eeae537c1b0c6c260f6ecd8
|
7
|
+
data.tar.gz: 8f3cbbb7c9b4e66203b81a5fbdddf232ebe2a072cc91ba3381cec166f1071804ec26344554d6a18badce332107dd620d35a1e37828937f815092d78123b00c33
|
data/README.md
CHANGED
data/condition.gemspec
CHANGED
@@ -25,6 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.add_development_dependency "sequel"
|
26
26
|
spec.add_development_dependency "mongo"
|
27
27
|
spec.add_development_dependency "bson_ext"
|
28
|
+
spec.add_development_dependency "redis"
|
28
29
|
spec.add_dependency "roo"
|
29
30
|
spec.add_dependency "json"
|
30
31
|
end
|
data/lib/condition/param.rb
CHANGED
@@ -14,8 +14,17 @@ module Condition
|
|
14
14
|
@@reader
|
15
15
|
end
|
16
16
|
|
17
|
-
def initialize(path, sheet_index=0)
|
18
|
-
|
17
|
+
def initialize(path, sheet_index=0, blks: nil, reader: nil)
|
18
|
+
if blks.nil?
|
19
|
+
rd = reader.nil? ? Condition::Param.get_reader() : reader
|
20
|
+
blocks = rd.read_sheet(path, sheet_index)
|
21
|
+
set_blocks(blocks)
|
22
|
+
else
|
23
|
+
set_blocks(blks)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def set_blocks(blocks)
|
19
28
|
@item_map = {}
|
20
29
|
item_list = []
|
21
30
|
blocks.each do |rows|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
module Condition
|
5
|
+
module Reader
|
6
|
+
class ConvertSheet
|
7
|
+
def initialize(redis)
|
8
|
+
@redis = redis
|
9
|
+
@reader = Condition::Reader::RooReader.new
|
10
|
+
end
|
11
|
+
|
12
|
+
def convert(path, sheet_index, name)
|
13
|
+
@redis.set(name, JSON.generate(@reader.read_sheet(path, sheet_index)))
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
module Condition
|
5
|
+
module Reader
|
6
|
+
class RedisReader
|
7
|
+
def initialize(redis)
|
8
|
+
@redis = redis
|
9
|
+
end
|
10
|
+
|
11
|
+
def read_sheet(path, sheet_index)
|
12
|
+
JSON.parse(@redis.get(path), {:symbolize_names => true})
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/condition/version.rb
CHANGED
data/spec/condition_spec.rb
CHANGED
@@ -5,6 +5,14 @@ describe Condition do
|
|
5
5
|
DB << "DROP TABLE IF EXISTS t_test"
|
6
6
|
DB << "CREATE TABLE t_user(user_id BIGINT, user_name TEXT, login_ts TIMESTAMPTZ NOT NULL)"
|
7
7
|
DB << "CREATE TABLE t_test(id BIGINT, name TEXT, flag BOOLEAN, ts TIMESTAMPTZ, iary BIGINT[], tary TEXT[], test_name TEXT NOT NULL)"
|
8
|
+
|
9
|
+
converter = Condition::Reader::ConvertSheet.new(REDIS)
|
10
|
+
converter.convert(FILES + '/t_user.ods', 0, 'pre_condition')
|
11
|
+
converter.convert(FILES + '/t_user.ods', 1, 'post_condition1')
|
12
|
+
converter.convert(FILES + '/t_user.ods', 2, 'params')
|
13
|
+
converter.convert(FILES + '/t_user.ods', 3, 'default')
|
14
|
+
converter.convert(FILES + '/t_user.ods', 4, 'post_condition2')
|
15
|
+
converter.convert(FILES + '/t_user.ods', 5, 'post_condition3')
|
8
16
|
end
|
9
17
|
|
10
18
|
it 'pre and post' do
|
@@ -67,4 +75,38 @@ describe Condition do
|
|
67
75
|
param = Condition::Param.new(FILES + '/mongo.ods', 1)
|
68
76
|
param.post(storage)
|
69
77
|
end
|
78
|
+
|
79
|
+
it 'redis with set_reader' do
|
80
|
+
reader = Condition::Reader::RedisReader.new(REDIS)
|
81
|
+
Condition::Param.set_reader(reader)
|
82
|
+
storage = Condition::Storage::Db.new(DB)
|
83
|
+
param = Condition::Param.new('pre_condition')
|
84
|
+
default = Condition::Param.new('default')
|
85
|
+
param.pre(storage, default)
|
86
|
+
param = Condition::Param.new('post_condition1')
|
87
|
+
param.post(storage)
|
88
|
+
param = Condition::Param.new('post_condition2')
|
89
|
+
expect { param.post(storage) }.to raise_error
|
90
|
+
param = Condition::Param.new('post_condition3')
|
91
|
+
expect { param.post(storage) }.to raise_error
|
92
|
+
end
|
93
|
+
|
94
|
+
it 'redis with reader parameter' do
|
95
|
+
reader = Condition::Reader::RedisReader.new(REDIS)
|
96
|
+
Condition::Param.set_reader(nil)
|
97
|
+
|
98
|
+
storage = Condition::Storage::Db.new(DB)
|
99
|
+
param = Condition::Param.new('pre_condition', reader: reader)
|
100
|
+
default = Condition::Param.new('default', reader: reader)
|
101
|
+
param.pre(storage, default)
|
102
|
+
param = Condition::Param.new('post_condition1', reader: reader)
|
103
|
+
param.post(storage)
|
104
|
+
param = Condition::Param.new('post_condition2', reader: reader)
|
105
|
+
expect { param.post(storage) }.to raise_error
|
106
|
+
param = Condition::Param.new('post_condition3', reader: reader)
|
107
|
+
expect { param.post(storage) }.to raise_error
|
108
|
+
|
109
|
+
param = Condition::Param.new(FILES + '/t_user.ods', 5)
|
110
|
+
expect { param.post(storage) }.to raise_error
|
111
|
+
end
|
70
112
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -7,10 +7,14 @@ require 'pg'
|
|
7
7
|
require 'mongo'
|
8
8
|
require 'condition/storage/db'
|
9
9
|
require 'condition/storage/mongo'
|
10
|
+
require 'redis'
|
11
|
+
require 'condition/reader/redis_reader'
|
12
|
+
require 'condition/reader/convert_sheet'
|
10
13
|
|
11
14
|
FILES = File.dirname(__FILE__) + "/files"
|
12
15
|
DB = Sequel.connect('postgres://localhost:5432/test?user=aoyagikouhei')
|
13
16
|
MONGO = Mongo::MongoClient.new('localhost', 27017)['test']
|
17
|
+
REDIS = Redis.new
|
14
18
|
|
15
19
|
RSpec.configure do |config|
|
16
20
|
# some (optional) config here
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: condition
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- aoyagikouhei
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -108,6 +108,20 @@ dependencies:
|
|
108
108
|
- - '>='
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: redis
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '>='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: roo
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -152,6 +166,8 @@ files:
|
|
152
166
|
- lib/condition.rb
|
153
167
|
- lib/condition/param.rb
|
154
168
|
- lib/condition/param_item.rb
|
169
|
+
- lib/condition/reader/convert_sheet.rb
|
170
|
+
- lib/condition/reader/redis_reader.rb
|
155
171
|
- lib/condition/reader/roo_reader.rb
|
156
172
|
- lib/condition/storage/db.rb
|
157
173
|
- lib/condition/storage/mongo.rb
|