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

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 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
  - - '>='