cql-rb 1.0.0.pre7 → 1.0.0.pre8
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.
- data/lib/cql/byte_buffer.rb +22 -0
- data/lib/cql/client.rb +79 -310
- data/lib/cql/client/asynchronous_client.rb +254 -0
- data/lib/cql/client/asynchronous_prepared_statement.rb +19 -0
- data/lib/cql/client/column_metadata.rb +22 -0
- data/lib/cql/client/query_result.rb +34 -0
- data/lib/cql/client/result_metadata.rb +31 -0
- data/lib/cql/client/synchronous_client.rb +47 -0
- data/lib/cql/client/synchronous_prepared_statement.rb +47 -0
- data/lib/cql/future.rb +7 -3
- data/lib/cql/io.rb +1 -0
- data/lib/cql/io/io_reactor.rb +9 -3
- data/lib/cql/io/node_connection.rb +2 -2
- data/lib/cql/protocol.rb +5 -4
- data/lib/cql/protocol/request.rb +23 -0
- data/lib/cql/protocol/requests/credentials_request.rb +1 -1
- data/lib/cql/protocol/requests/execute_request.rb +13 -84
- data/lib/cql/protocol/requests/options_request.rb +1 -1
- data/lib/cql/protocol/requests/prepare_request.rb +2 -1
- data/lib/cql/protocol/requests/query_request.rb +3 -1
- data/lib/cql/protocol/requests/register_request.rb +1 -1
- data/lib/cql/protocol/requests/startup_request.rb +1 -2
- data/lib/cql/protocol/{response_body.rb → response.rb} +1 -1
- data/lib/cql/protocol/responses/authenticate_response.rb +1 -1
- data/lib/cql/protocol/responses/error_response.rb +1 -1
- data/lib/cql/protocol/responses/ready_response.rb +1 -1
- data/lib/cql/protocol/responses/result_response.rb +1 -1
- data/lib/cql/protocol/responses/rows_result_response.rb +1 -1
- data/lib/cql/protocol/responses/supported_response.rb +1 -1
- data/lib/cql/protocol/type_converter.rb +226 -46
- data/lib/cql/version.rb +1 -1
- data/spec/cql/byte_buffer_spec.rb +38 -0
- data/spec/cql/client/asynchronous_client_spec.rb +472 -0
- data/spec/cql/client/client_shared.rb +27 -0
- data/spec/cql/client/synchronous_client_spec.rb +104 -0
- data/spec/cql/client/synchronous_prepared_statement_spec.rb +65 -0
- data/spec/cql/future_spec.rb +4 -0
- data/spec/cql/io/io_reactor_spec.rb +39 -20
- data/spec/cql/protocol/request_spec.rb +17 -0
- data/spec/cql/protocol/requests/credentials_request_spec.rb +82 -0
- data/spec/cql/protocol/requests/execute_request_spec.rb +174 -0
- data/spec/cql/protocol/requests/options_request_spec.rb +24 -0
- data/spec/cql/protocol/requests/prepare_request_spec.rb +70 -0
- data/spec/cql/protocol/requests/query_request_spec.rb +95 -0
- data/spec/cql/protocol/requests/register_request_spec.rb +24 -0
- data/spec/cql/protocol/requests/startup_request_spec.rb +29 -0
- data/spec/integration/client_spec.rb +26 -19
- data/spec/integration/protocol_spec.rb +2 -2
- data/spec/integration/regression_spec.rb +1 -1
- metadata +35 -9
- data/lib/cql/protocol/request_body.rb +0 -15
- data/lib/cql/protocol/request_frame.rb +0 -20
- data/spec/cql/client_spec.rb +0 -454
- data/spec/cql/protocol/request_frame_spec.rb +0 -456
@@ -0,0 +1,24 @@
|
|
1
|
+
# encoding: ascii-8bit
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
|
6
|
+
module Cql
|
7
|
+
module Protocol
|
8
|
+
describe OptionsRequest do
|
9
|
+
describe '#encode_frame' do
|
10
|
+
it 'encodes an OPTIONS request frame' do
|
11
|
+
bytes = OptionsRequest.new.encode_frame(3)
|
12
|
+
bytes.should == "\x01\x00\x03\x05\x00\x00\x00\x00"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
describe '#to_s' do
|
17
|
+
it 'returns a pretty string' do
|
18
|
+
request = OptionsRequest.new
|
19
|
+
request.to_s.should == 'OPTIONS'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# encoding: ascii-8bit
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
|
6
|
+
module Cql
|
7
|
+
module Protocol
|
8
|
+
describe PrepareRequest do
|
9
|
+
describe '#initialize' do
|
10
|
+
it 'raises an error when the CQL is nil' do
|
11
|
+
expect { PrepareRequest.new(nil) }.to raise_error(ArgumentError)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe '#encode_frame' do
|
16
|
+
it 'encodes a PREPARE request frame' do
|
17
|
+
bytes = PrepareRequest.new('UPDATE users SET email = ? WHERE user_name = ?').encode_frame(3)
|
18
|
+
bytes.should == "\x01\x00\x03\x09\x00\x00\x00\x32\x00\x00\x00\x2eUPDATE users SET email = ? WHERE user_name = ?"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe '#to_s' do
|
23
|
+
it 'returns a pretty string' do
|
24
|
+
request = PrepareRequest.new('UPDATE users SET email = ? WHERE user_name = ?')
|
25
|
+
request.to_s.should == 'PREPARE "UPDATE users SET email = ? WHERE user_name = ?"'
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
describe '#eql?' do
|
30
|
+
it 'returns true when the CQL is the same' do
|
31
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
32
|
+
p2 = PrepareRequest.new('SELECT * FROM system.peers')
|
33
|
+
p1.should eql(p2)
|
34
|
+
end
|
35
|
+
|
36
|
+
it 'returns false when the CQL is different' do
|
37
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
38
|
+
p2 = PrepareRequest.new('SELECT * FROM peers')
|
39
|
+
p1.should_not eql(p2)
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'does not know about CQL syntax' do
|
43
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
44
|
+
p2 = PrepareRequest.new('SELECT * FROM system.peers')
|
45
|
+
p1.should_not eql(p2)
|
46
|
+
end
|
47
|
+
|
48
|
+
it 'is aliased as ==' do
|
49
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
50
|
+
p2 = PrepareRequest.new('SELECT * FROM system.peers')
|
51
|
+
p1.should == p2
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
describe '#hash' do
|
56
|
+
it 'has the same hash code as another identical object' do
|
57
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
58
|
+
p2 = PrepareRequest.new('SELECT * FROM system.peers')
|
59
|
+
p1.hash.should == p2.hash
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'does not have the same hash code when the CQL is different' do
|
63
|
+
p1 = PrepareRequest.new('SELECT * FROM system.peers')
|
64
|
+
p2 = PrepareRequest.new('SELECT * FROM peers')
|
65
|
+
p1.hash.should_not == p2.hash
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
# encoding: ascii-8bit
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
|
6
|
+
module Cql
|
7
|
+
module Protocol
|
8
|
+
describe QueryRequest do
|
9
|
+
describe '#initialize' do
|
10
|
+
it 'raises an error when the CQL is nil' do
|
11
|
+
expect { QueryRequest.new(nil, :one) }.to raise_error(ArgumentError)
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'raises an error when the consistency is nil' do
|
15
|
+
expect { QueryRequest.new('USE system', nil) }.to raise_error(ArgumentError)
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'raises an error when the consistency is invalid' do
|
19
|
+
expect { QueryRequest.new('USE system', :hello) }.to raise_error(ArgumentError)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
describe '#encode_frame' do
|
24
|
+
it 'encodes a QUERY request frame' do
|
25
|
+
bytes = QueryRequest.new('USE system', :all).encode_frame(3)
|
26
|
+
bytes.should == "\x01\x00\x03\x07\x00\x00\x00\x10\x00\x00\x00\x0aUSE system\x00\x05"
|
27
|
+
end
|
28
|
+
|
29
|
+
it 'correctly encodes queries with multibyte characters' do
|
30
|
+
bytes = QueryRequest.new("INSERT INTO users (user_id, first, last, age) VALUES ('test', 'ümlaut', 'test', 1)", :all).encode_frame(3)
|
31
|
+
bytes.should eql_bytes("\x01\x00\x03\a\x00\x00\x00Y\x00\x00\x00SINSERT INTO users (user_id, first, last, age) VALUES ('test', '\xC3\xBCmlaut', 'test', 1)\x00\x05")
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '#to_s' do
|
36
|
+
it 'returns a pretty string' do
|
37
|
+
request = QueryRequest.new('SELECT * FROM system.peers', :local_quorum)
|
38
|
+
request.to_s.should == 'QUERY "SELECT * FROM system.peers" LOCAL_QUORUM'
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
describe '#eql?' do
|
43
|
+
it 'returns true when the CQL and consistency are the same' do
|
44
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
45
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
46
|
+
q2.should eql(q2)
|
47
|
+
end
|
48
|
+
|
49
|
+
it 'returns false when the consistency is different' do
|
50
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
51
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :three)
|
52
|
+
q1.should_not eql(q2)
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'returns false when the CQL is different' do
|
56
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
57
|
+
q2 = QueryRequest.new('SELECT * FROM peers', :two)
|
58
|
+
q1.should_not eql(q2)
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'does not know about CQL syntax' do
|
62
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
63
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
64
|
+
q1.should_not eql(q2)
|
65
|
+
end
|
66
|
+
|
67
|
+
it 'is aliased as ==' do
|
68
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
69
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
70
|
+
q1.should == q2
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
describe '#hash' do
|
75
|
+
it 'has the same hash code as another identical object' do
|
76
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
77
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
78
|
+
q1.hash.should == q2.hash
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'does not have the same hash code when the consistency is different' do
|
82
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
83
|
+
q2 = QueryRequest.new('SELECT * FROM system.peers', :three)
|
84
|
+
q1.hash.should_not == q2.hash
|
85
|
+
end
|
86
|
+
|
87
|
+
it 'does not have the same hash code when the CQL is different' do
|
88
|
+
q1 = QueryRequest.new('SELECT * FROM system.peers', :two)
|
89
|
+
q2 = QueryRequest.new('SELECT * FROM peers', :two)
|
90
|
+
q1.hash.should_not == q2.hash
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# encoding: ascii-8bit
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
|
6
|
+
module Cql
|
7
|
+
module Protocol
|
8
|
+
describe RegisterRequest do
|
9
|
+
describe '#encode_frame' do
|
10
|
+
it 'encodes a REGISTER request frame' do
|
11
|
+
bytes = RegisterRequest.new('TOPOLOGY_CHANGE', 'STATUS_CHANGE').encode_frame(3)
|
12
|
+
bytes.should == "\x01\x00\x03\x0b\x00\x00\x00\x22\x00\x02\x00\x0fTOPOLOGY_CHANGE\x00\x0dSTATUS_CHANGE"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
describe '#to_s' do
|
17
|
+
it 'returns a pretty string' do
|
18
|
+
request = RegisterRequest.new('TOPOLOGY_CHANGE', 'STATUS_CHANGE')
|
19
|
+
request.to_s.should == 'REGISTER ["TOPOLOGY_CHANGE", "STATUS_CHANGE"]'
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# encoding: ascii-8bit
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
|
6
|
+
module Cql
|
7
|
+
module Protocol
|
8
|
+
describe StartupRequest do
|
9
|
+
describe '#encode_frame' do
|
10
|
+
it 'encodes a STARTUP request frame' do
|
11
|
+
bytes = StartupRequest.new('3.0.0', 'snappy').encode_frame(3)
|
12
|
+
bytes.should == "\x01\x00\x03\x01\x00\x00\x00\x2b\x00\x02\x00\x0bCQL_VERSION\x00\x053.0.0\x00\x0bCOMPRESSION\x00\x06snappy"
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'defaults to CQL 3.0.0 and no compression' do
|
16
|
+
bytes = StartupRequest.new.encode_frame(3)
|
17
|
+
bytes.should == "\x01\x00\x03\x01\x00\x00\x00\x16\x00\x01\x00\x0bCQL_VERSION\x00\x053.0.0"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
describe '#to_s' do
|
22
|
+
it 'returns a pretty string' do
|
23
|
+
request = StartupRequest.new
|
24
|
+
request.to_s.should == 'STARTUP {"CQL_VERSION"=>"3.0.0"}'
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -9,7 +9,7 @@ describe 'A CQL client' do
|
|
9
9
|
end
|
10
10
|
|
11
11
|
let :client do
|
12
|
-
Cql::Client.
|
12
|
+
Cql::Client.connect(connection_options)
|
13
13
|
end
|
14
14
|
|
15
15
|
before do
|
@@ -37,7 +37,7 @@ describe 'A CQL client' do
|
|
37
37
|
end
|
38
38
|
|
39
39
|
it 'can be initialized with a keyspace' do
|
40
|
-
c = Cql::Client.
|
40
|
+
c = Cql::Client.connect(connection_options.merge(:keyspace => 'system'))
|
41
41
|
c.connect
|
42
42
|
begin
|
43
43
|
c.keyspace.should == 'system'
|
@@ -47,29 +47,38 @@ describe 'A CQL client' do
|
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
50
|
+
context 'when using prepared statements' do
|
51
|
+
before do
|
52
|
+
client.use('system')
|
53
|
+
end
|
54
54
|
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
55
|
+
let :statement do
|
56
|
+
client.prepare('SELECT * FROM schema_keyspaces WHERE keyspace_name = ?')
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'prepares a statement' do
|
60
|
+
statement.should_not be_nil
|
61
|
+
end
|
62
|
+
|
63
|
+
it 'executes a prepared statement' do
|
64
|
+
result = statement.execute('system')
|
65
|
+
result.should have(1).item
|
66
|
+
result = statement.execute('system', :one)
|
67
|
+
result.should have(1).item
|
68
|
+
end
|
61
69
|
end
|
62
70
|
|
63
71
|
context 'with multiple connections' do
|
64
72
|
let :multi_client do
|
65
73
|
opts = connection_options.dup
|
66
74
|
opts[:host] = ([opts[:host]] * 10).join(',')
|
67
|
-
Cql::Client.
|
75
|
+
Cql::Client.connect(opts)
|
68
76
|
end
|
69
77
|
|
70
78
|
before do
|
71
79
|
client.close
|
72
80
|
multi_client.connect
|
81
|
+
multi_client.use('system')
|
73
82
|
end
|
74
83
|
|
75
84
|
after do
|
@@ -77,7 +86,6 @@ describe 'A CQL client' do
|
|
77
86
|
end
|
78
87
|
|
79
88
|
it 'handles keyspace changes with #use' do
|
80
|
-
multi_client.use('system')
|
81
89
|
100.times do
|
82
90
|
result = multi_client.execute(%<SELECT * FROM schema_keyspaces WHERE keyspace_name = 'system'>)
|
83
91
|
result.should have(1).item
|
@@ -85,7 +93,6 @@ describe 'A CQL client' do
|
|
85
93
|
end
|
86
94
|
|
87
95
|
it 'handles keyspace changes with #execute' do
|
88
|
-
multi_client.execute('USE system')
|
89
96
|
100.times do
|
90
97
|
result = multi_client.execute(%<SELECT * FROM schema_keyspaces WHERE keyspace_name = 'system'>)
|
91
98
|
result.should have(1).item
|
@@ -130,7 +137,7 @@ describe 'A CQL client' do
|
|
130
137
|
|
131
138
|
it 'raises an error when the credentials are bad' do
|
132
139
|
if authentication_enabled
|
133
|
-
client = Cql::Client.
|
140
|
+
client = Cql::Client.connect(connection_options.merge(credentials: {username: 'foo', password: 'bar'}))
|
134
141
|
expect { client.connect }.to raise_error(Cql::AuthenticationError)
|
135
142
|
else
|
136
143
|
pending 'authentication not configured'
|
@@ -144,12 +151,12 @@ describe 'A CQL client' do
|
|
144
151
|
end
|
145
152
|
|
146
153
|
it 'raises an error for bad consistency levels' do
|
147
|
-
expect { client.execute('SELECT * FROM system.peers', :helloworld) }.to raise_error(
|
154
|
+
expect { client.execute('SELECT * FROM system.peers', :helloworld) }.to raise_error(ArgumentError)
|
148
155
|
end
|
149
156
|
|
150
157
|
it 'fails gracefully when connecting to the Thrift port' do
|
151
|
-
|
152
|
-
expect {
|
158
|
+
opts = connection_options.merge(port: 9160)
|
159
|
+
expect { Cql::Client.connect(opts) }.to raise_error(Cql::IoError)
|
153
160
|
end
|
154
161
|
|
155
162
|
it 'fails gracefully when connecting to something that does not run C*' do
|
@@ -41,7 +41,7 @@ describe 'Protocol parsing and communication' do
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def create_keyspace!
|
44
|
-
query("CREATE KEYSPACE #{keyspace_name} WITH REPLICATION = {'
|
44
|
+
query("CREATE KEYSPACE #{keyspace_name} WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1}")
|
45
45
|
end
|
46
46
|
|
47
47
|
def use_keyspace!
|
@@ -208,7 +208,7 @@ describe 'Protocol parsing and communication' do
|
|
208
208
|
end
|
209
209
|
|
210
210
|
it 'sends a CREATE KEYSPACE command' do
|
211
|
-
response = query("CREATE KEYSPACE #{keyspace_name} WITH REPLICATION = {'
|
211
|
+
response = query("CREATE KEYSPACE #{keyspace_name} WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1}")
|
212
212
|
begin
|
213
213
|
response.change.should == 'CREATED'
|
214
214
|
response.keyspace.should == keyspace_name
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cql-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.pre8
|
5
5
|
prerelease: 6
|
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: 2013-
|
12
|
+
date: 2013-06-07 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: A pure Ruby CQL3 driver for Cassandra
|
15
15
|
email:
|
@@ -19,6 +19,13 @@ extensions: []
|
|
19
19
|
extra_rdoc_files: []
|
20
20
|
files:
|
21
21
|
- lib/cql/byte_buffer.rb
|
22
|
+
- lib/cql/client/asynchronous_client.rb
|
23
|
+
- lib/cql/client/asynchronous_prepared_statement.rb
|
24
|
+
- lib/cql/client/column_metadata.rb
|
25
|
+
- lib/cql/client/query_result.rb
|
26
|
+
- lib/cql/client/result_metadata.rb
|
27
|
+
- lib/cql/client/synchronous_client.rb
|
28
|
+
- lib/cql/client/synchronous_prepared_statement.rb
|
22
29
|
- lib/cql/client.rb
|
23
30
|
- lib/cql/future.rb
|
24
31
|
- lib/cql/io/io_reactor.rb
|
@@ -26,8 +33,7 @@ files:
|
|
26
33
|
- lib/cql/io.rb
|
27
34
|
- lib/cql/protocol/decoding.rb
|
28
35
|
- lib/cql/protocol/encoding.rb
|
29
|
-
- lib/cql/protocol/
|
30
|
-
- lib/cql/protocol/request_frame.rb
|
36
|
+
- lib/cql/protocol/request.rb
|
31
37
|
- lib/cql/protocol/requests/credentials_request.rb
|
32
38
|
- lib/cql/protocol/requests/execute_request.rb
|
33
39
|
- lib/cql/protocol/requests/options_request.rb
|
@@ -35,7 +41,7 @@ files:
|
|
35
41
|
- lib/cql/protocol/requests/query_request.rb
|
36
42
|
- lib/cql/protocol/requests/register_request.rb
|
37
43
|
- lib/cql/protocol/requests/startup_request.rb
|
38
|
-
- lib/cql/protocol/
|
44
|
+
- lib/cql/protocol/response.rb
|
39
45
|
- lib/cql/protocol/response_frame.rb
|
40
46
|
- lib/cql/protocol/responses/authenticate_response.rb
|
41
47
|
- lib/cql/protocol/responses/detailed_error_response.rb
|
@@ -60,12 +66,22 @@ files:
|
|
60
66
|
- bin/cqlexec
|
61
67
|
- README.md
|
62
68
|
- spec/cql/byte_buffer_spec.rb
|
63
|
-
- spec/cql/
|
69
|
+
- spec/cql/client/asynchronous_client_spec.rb
|
70
|
+
- spec/cql/client/client_shared.rb
|
71
|
+
- spec/cql/client/synchronous_client_spec.rb
|
72
|
+
- spec/cql/client/synchronous_prepared_statement_spec.rb
|
64
73
|
- spec/cql/future_spec.rb
|
65
74
|
- spec/cql/io/io_reactor_spec.rb
|
66
75
|
- spec/cql/protocol/decoding_spec.rb
|
67
76
|
- spec/cql/protocol/encoding_spec.rb
|
68
|
-
- spec/cql/protocol/
|
77
|
+
- spec/cql/protocol/request_spec.rb
|
78
|
+
- spec/cql/protocol/requests/credentials_request_spec.rb
|
79
|
+
- spec/cql/protocol/requests/execute_request_spec.rb
|
80
|
+
- spec/cql/protocol/requests/options_request_spec.rb
|
81
|
+
- spec/cql/protocol/requests/prepare_request_spec.rb
|
82
|
+
- spec/cql/protocol/requests/query_request_spec.rb
|
83
|
+
- spec/cql/protocol/requests/register_request_spec.rb
|
84
|
+
- spec/cql/protocol/requests/startup_request_spec.rb
|
69
85
|
- spec/cql/protocol/response_frame_spec.rb
|
70
86
|
- spec/cql/uuid_spec.rb
|
71
87
|
- spec/integration/client_spec.rb
|
@@ -103,12 +119,22 @@ specification_version: 3
|
|
103
119
|
summary: Cassandra CQL3 driver
|
104
120
|
test_files:
|
105
121
|
- spec/cql/byte_buffer_spec.rb
|
106
|
-
- spec/cql/
|
122
|
+
- spec/cql/client/asynchronous_client_spec.rb
|
123
|
+
- spec/cql/client/client_shared.rb
|
124
|
+
- spec/cql/client/synchronous_client_spec.rb
|
125
|
+
- spec/cql/client/synchronous_prepared_statement_spec.rb
|
107
126
|
- spec/cql/future_spec.rb
|
108
127
|
- spec/cql/io/io_reactor_spec.rb
|
109
128
|
- spec/cql/protocol/decoding_spec.rb
|
110
129
|
- spec/cql/protocol/encoding_spec.rb
|
111
|
-
- spec/cql/protocol/
|
130
|
+
- spec/cql/protocol/request_spec.rb
|
131
|
+
- spec/cql/protocol/requests/credentials_request_spec.rb
|
132
|
+
- spec/cql/protocol/requests/execute_request_spec.rb
|
133
|
+
- spec/cql/protocol/requests/options_request_spec.rb
|
134
|
+
- spec/cql/protocol/requests/prepare_request_spec.rb
|
135
|
+
- spec/cql/protocol/requests/query_request_spec.rb
|
136
|
+
- spec/cql/protocol/requests/register_request_spec.rb
|
137
|
+
- spec/cql/protocol/requests/startup_request_spec.rb
|
112
138
|
- spec/cql/protocol/response_frame_spec.rb
|
113
139
|
- spec/cql/uuid_spec.rb
|
114
140
|
- spec/integration/client_spec.rb
|