couchbase-jruby-model 0.1.0-java → 0.1.1-java

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: 8593657f00069e9c81f94cee9e61f5c0042a2feb
4
- data.tar.gz: a07ff9ff2b95fa68862932a82c909779d6c330fc
3
+ metadata.gz: 8e2345b2e7a2ccbf80591d61f657c9f177ab1e3f
4
+ data.tar.gz: 5fd51b30461a58bef0e65b16fad0882d8e436246
5
5
  SHA512:
6
- metadata.gz: a266fbd9fd7e762f7ce3a86ba4cae0fa793e50d13024d5b78060093f5ac6299407010deb9f06d8039f7668faa8932ae1e12dc691a82c8185fe7d26d0392b7930
7
- data.tar.gz: a250ab271e7f162b5bcd73e467636383a4a9b51d57c22c69fc7ffea19c5dade0fbe39e38a8bdfad4f0090fd77e579dca2d5fc3c8200b1d9fc03c8c7cac3eda02
6
+ metadata.gz: d3cf894a10e755286545346a532fe3a237932b7cc499b9113fe1a145d1eed27d85e8e4bab2014b2a66cc96854aeddd4733007ae3be18748668a582fb6a4df231
7
+ data.tar.gz: 3524ce4467da9db06adca8d32e739ed1809f920edbb7dc02520da217225516ea1c72d17640b4d2c61564cc874e0c9feb9e1c6b14cd14fdfdf8bd6672132d01df
@@ -18,10 +18,11 @@ Gem::Specification.new do |s|
18
18
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
19
  s.require_paths = ['lib']
20
20
 
21
- s.add_runtime_dependency 'couchbase-jruby-client', '~> 0.1.4'
21
+ s.add_runtime_dependency 'couchbase-jruby-client', '~> 0.1.8'
22
22
 
23
23
  s.add_development_dependency 'rake'
24
24
  s.add_development_dependency 'minitest'
25
- s.add_development_dependency 'activesupport'
26
- s.add_development_dependency 'activemodel'
25
+ s.add_development_dependency 'activesupport', '>= 4.0.2'
26
+ s.add_development_dependency 'activemodel', '>= 4.0.2'
27
+ s.add_development_dependency 'pry'
27
28
  end
@@ -19,7 +19,7 @@ module Couchbase
19
19
 
20
20
  class Model
21
21
 
22
- VERSION = '0.1.0'
22
+ VERSION = '0.1.1'
23
23
 
24
24
  end
25
25
 
@@ -19,7 +19,7 @@ require 'rake/testtask'
19
19
  require 'rake/clean'
20
20
 
21
21
  rule 'test/CouchbaseMock.jar' do |task|
22
- jar_path = "0.5-SNAPSHOT/CouchbaseMock-0.5-20120726.220757-19.jar"
22
+ jar_path = "0.6-SNAPSHOT/CouchbaseMock-0.6-20130903.160518-3.jar"
23
23
  sh %{wget -q -O test/CouchbaseMock.jar http://files.couchbase.com/maven2/org/couchbase/mock/CouchbaseMock/#{jar_path}}
24
24
  end
25
25
 
@@ -21,6 +21,7 @@ require 'couchbase/model'
21
21
 
22
22
  require 'socket'
23
23
  require 'open-uri'
24
+ require 'pry'
24
25
 
25
26
  class CouchbaseServer
26
27
  attr_accessor :host, :port, :num_nodes, :buckets_spec
@@ -30,7 +31,7 @@ class CouchbaseServer
30
31
  end
31
32
 
32
33
  def initialize(params = {})
33
- @host, @port = ['localhost', 8091] #ENV['COUCHBASE_SERVER'].split(':')
34
+ @host, @port = ENV['COUCHBASE_SERVER'].split(':')
34
35
  @port = @port.to_i
35
36
 
36
37
  if @host.nil? || @host.empty? || @port == 0
@@ -57,7 +58,11 @@ class CouchbaseServer
57
58
  def stop; end
58
59
  end
59
60
 
61
+ require 'java'
62
+ require "#{File.dirname(__FILE__)}/CouchbaseMock.jar"
63
+
60
64
  class CouchbaseMock
65
+
61
66
  Monitor = Struct.new(:pid, :client, :socket, :port)
62
67
 
63
68
  attr_accessor :host, :port, :buckets_spec, :num_nodes, :num_vbuckets
@@ -67,9 +72,9 @@ class CouchbaseMock
67
72
  end
68
73
 
69
74
  def initialize(params = {})
70
- @host = '127.0.0.1'
71
- @port = 0
72
- @num_nodes = 10
75
+ @host = 'localhost'
76
+ @port = 8091
77
+ @num_nodes = 1
73
78
  @num_vbuckets = 4096
74
79
  @buckets_spec = 'default:' # "default:,protected:secret,cache::memcache"
75
80
  params.each do |key, value|
@@ -82,29 +87,13 @@ class CouchbaseMock
82
87
  end
83
88
 
84
89
  def start
85
- @monitor = Monitor.new
86
- @monitor.socket = TCPServer.new(nil, 0)
87
- @monitor.socket.listen(10)
88
- _, @monitor.port, _, _ = @monitor.socket.addr
89
- trap('CLD') do
90
- puts 'CouchbaseMock.jar died unexpectedly during startup'
91
- exit(1)
92
- end
93
- @monitor.pid = fork
94
- if @monitor.pid.nil?
95
- rc = exec(command_line("--harakiri-monitor=:#{@monitor.port}"))
96
- else
97
- trap('CLD', 'SIG_DFL')
98
- @monitor.client, _ = @monitor.socket.accept
99
- @port = @monitor.client.recv(100).to_i
100
- end
90
+ @mock = Java::OrgCouchbaseMock::CouchbaseMock.new(@host, @port, @num_nodes, @num_vbuckets, @buckets_spec)
91
+ @mock.start
92
+ @mock.waitForStartup
101
93
  end
102
94
 
103
95
  def stop
104
- @monitor.client.close
105
- @monitor.socket.close
106
- Process.kill('TERM', @monitor.pid)
107
- Process.wait(@monitor.pid)
96
+ @mock.stop
108
97
  end
109
98
 
110
99
  def failover_node(index, bucket = 'default')
@@ -114,26 +103,13 @@ class CouchbaseMock
114
103
  def respawn_node(index, bucket = 'default')
115
104
  @monitor.client.send("respawn,#{index},#{bucket}", 0)
116
105
  end
117
-
118
- protected
119
-
120
- def command_line(extra = nil)
121
- cmd = "java -jar #{File.dirname(__FILE__)}/CouchbaseMock.jar"
122
- cmd << " --host #{@host}" if @host
123
- cmd << " --port #{@port}" if @port
124
- cmd << " --nodes #{@num_nodes}" if @num_nodes
125
- cmd << " --vbuckets #{@num_vbuckets}" if @num_vbuckets
126
- cmd << " --buckets #{@buckets_spec}" if @buckets_spec
127
- cmd << " #{extra}"
128
- cmd
129
- end
130
106
  end
131
107
 
132
108
  class MiniTest::Unit::TestCase
133
109
 
134
110
  def start_mock(params = {})
135
111
  mock = nil
136
- if true # ENV['COUCHBASE_SERVER']
112
+ if ENV['COUCHBASE_SERVER']
137
113
  mock = CouchbaseServer.new(params)
138
114
  if (params[:port] && mock.port != params[:port]) ||
139
115
  (params[:host] && mock.host != params[:host]) ||
@@ -163,6 +139,9 @@ class MiniTest::Unit::TestCase
163
139
  end
164
140
 
165
141
  def uniq_id(*suffixes)
166
- [caller.first[/.*[` ](.*)'/, 1], suffixes].join('_')
142
+ test_id = [caller.first[/.*[` ](.*)'/, 1], suffixes].compact.join('_')
143
+ @ids ||= {}
144
+ @ids[test_id] ||= Time.now.to_f
145
+ [test_id, @ids[test_id]].join('_')
167
146
  end
168
147
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchbase-jruby-model
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: java
6
6
  authors:
7
7
  - Couchbase
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-19 00:00:00.000000000 Z
12
+ date: 2013-12-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: couchbase-jruby-client
@@ -17,12 +17,12 @@ dependencies:
17
17
  requirements:
18
18
  - - ~>
19
19
  - !ruby/object:Gem::Version
20
- version: 0.1.4
20
+ version: 0.1.8
21
21
  requirement: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ~>
24
24
  - !ruby/object:Gem::Version
25
- version: 0.1.4
25
+ version: 0.1.8
26
26
  prerelease: false
27
27
  type: :runtime
28
28
  - !ruby/object:Gem::Dependency
@@ -59,16 +59,30 @@ dependencies:
59
59
  requirements:
60
60
  - - '>='
61
61
  - !ruby/object:Gem::Version
62
- version: '0'
62
+ version: 4.0.2
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - '>='
66
66
  - !ruby/object:Gem::Version
67
- version: '0'
67
+ version: 4.0.2
68
68
  prerelease: false
69
69
  type: :development
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: activemodel
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - '>='
75
+ - !ruby/object:Gem::Version
76
+ version: 4.0.2
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - '>='
80
+ - !ruby/object:Gem::Version
81
+ version: 4.0.2
82
+ prerelease: false
83
+ type: :development
84
+ - !ruby/object:Gem::Dependency
85
+ name: pry
72
86
  version_requirements: !ruby/object:Gem::Requirement
73
87
  requirements:
74
88
  - - '>='