minor: removed shoulda dependency

This commit is contained in:
Kyle Banker 2010-02-19 19:17:38 -05:00
parent 0368e79c74
commit 54a68c7438
10 changed files with 302 additions and 327 deletions

View File

@ -292,12 +292,10 @@ It's also possible to test replica pairs with connection pooling:
$ rake test:pooled_pair_insert
===Shoulda and Mocha
===Mocha
All tests now require shoulda and mocha. You can install these gems as
follows:
Running the test suite requires mocha. You can install it as follows:
$ gem install shoulda
$ gem install mocha
The tests assume that the Mongo database is running on the default port. You
@ -305,23 +303,6 @@ can override the default host (localhost) and port (Connection::DEFAULT_PORT) by
using the environment variables MONGO_RUBY_DRIVER_HOST and
MONGO_RUBY_DRIVER_PORT.
The project mongo-qa (http://github.com/mongodb/mongo-qa) contains many more
Mongo driver tests that are language independent. To run thoses tests as part
of the "rake test" task, download the code "next to" this directory. So, after
installing the mongo-qa code you would have these two directories next to each
other:
$ ls
mongo-qa
mongo-ruby-driver
$ rake test
The tests run just fine if the mongo-qa directory is not there.
Additionally, the script bin/validate is used by the mongo-qa project's
validator script.
= Documentation
This documentation is available online at http://api.mongodb.org/ruby. You can
@ -342,7 +323,7 @@ See CREDITS.
= License
Copyright 2008-2009 10gen Inc.
Copyright 2008-2010 10gen Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@ -355,4 +336,3 @@ See CREDITS.
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@ -1,9 +1,6 @@
# encoding:utf-8
require 'test/test_helper'
class BinaryTest < Test::Unit::TestCase
context "Inspecting" do
setup do
@data = ("THIS IS BINARY " * 50).unpack("c*")
@ -14,4 +11,3 @@ class BinaryTest < Test::Unit::TestCase
assert_equal "<Mongo::Binary:#{binary.object_id}>", binary.inspect
end
end
end

View File

@ -1,15 +1,15 @@
require 'test/test_helper'
include Mongo
class GridTest < Test::Unit::TestCase
def setup
context "GridFileSystem:" do
setup do
@db ||= Connection.new(ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost',
ENV['MONGO_RUBY_DRIVER_PORT'] || Connection::DEFAULT_PORT).db('ruby-mongo-test')
@files = @db.collection('fs.files')
@chunks = @db.collection('fs.chunks')
end
def teardown
teardown do
@files.remove
@chunks.remove
end

View File

@ -1,16 +1,15 @@
require 'test/test_helper'
include Mongo
class GridIOTest < Test::Unit::TestCase
include GridFS
def setup
context "" do
setup do
@db ||= Connection.new(ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost',
ENV['MONGO_RUBY_DRIVER_PORT'] || Connection::DEFAULT_PORT).db('ruby-mongo-test')
@files = @db.collection('fs.files')
@chunks = @db.collection('fs.chunks')
end
def teardown
teardown do
@files.remove
@chunks.remove
end
@ -30,6 +29,5 @@ class GridIOTest < Test::Unit::TestCase
file = GridIO.new(@files, @chunks, @filename, @mode, false, :chunk_size => 1000)
assert_equal 1000, file.chunk_size
end
end
end

View File

@ -1,15 +1,15 @@
require 'test/test_helper'
include Mongo
class GridTest < Test::Unit::TestCase
def setup
context "Tests:" do
setup do
@db ||= Connection.new(ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost',
ENV['MONGO_RUBY_DRIVER_PORT'] || Connection::DEFAULT_PORT).db('ruby-mongo-test')
@files = @db.collection('test-fs.files')
@chunks = @db.collection('test-fs.chunks')
end
def teardown
teardown do
@files.remove
@chunks.remove
end
@ -44,6 +44,8 @@ class GridTest < Test::Unit::TestCase
end
end
context "Streaming: " do
setup do
def read_and_write_stream(filename, read_length, opts={})
io = File.open(File.join(File.dirname(__FILE__), 'data', filename), 'r')
id = @grid.put(io, filename + read_length.to_s, opts)
@ -60,8 +62,6 @@ class GridTest < Test::Unit::TestCase
assert_equal data.length, read_data.length
end
context "Streaming: " do
setup do
@grid = Grid.new(@db, 'test-fs')
end

View File

@ -5,14 +5,12 @@ require 'test/unit'
begin
require 'rubygems'
require 'shoulda'
require 'mocha'
rescue LoadError
puts <<MSG
This test suite now requires shoulda and mocha.
You can install these gems as follows:
gem install shoulda
This test suite requires mocha.
You can install it as follows:
gem install mocha
MSG
@ -40,3 +38,31 @@ class Test::Unit::TestCase
end
end
end
# shoulda-mini
# based on test/spec/mini 5
# http://gist.github.com/307649
# chris@ozmm.org
#
def context(*args, &block)
return super unless (name = args.first) && block
require 'test/unit'
klass = Class.new(Test::Unit::TestCase) do
def self.should(name, &block)
define_method("test_#{name.to_s.gsub(/\W/,'_')}", &block) if block
end
def self.xshould(*args) end
def self.context(*args, &block) instance_eval(&block) end
def self.setup(&block)
define_method(:setup) { self.class.setups.each { |s| instance_eval(&s) } }
setups << block
end
def self.setups; @setups ||= [] end
def self.teardown(&block) define_method(:teardown, &block) end
end
(class << klass; self end).send(:define_method, :name) { name.gsub(/\W/,'_') }
klass.class_eval do
include Mongo
end
klass.class_eval &block
end

View File

@ -1,7 +1,5 @@
require 'test/test_helper'
class ConnectionTest < Test::Unit::TestCase
context "Basic operations: " do
setup do
@logger = mock()
@ -58,6 +56,3 @@ class ConnectionTest < Test::Unit::TestCase
@coll.update({}, {:title => 'Moby Dick'}, :safe => true)
end
end
end

View File

@ -1,7 +1,8 @@
require 'test/test_helper'
include Mongo
class ConnectionTest < Test::Unit::TestCase
context "Initialization: " do
setup do
def new_mock_socket
socket = Object.new
socket.stubs(:setsockopt).with(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
@ -11,8 +12,7 @@ class ConnectionTest < Test::Unit::TestCase
def new_mock_db
db = Object.new
end
context "Initialization: " do
end
context "given a single node" do
setup do
@ -113,21 +113,3 @@ class ConnectionTest < Test::Unit::TestCase
end
end
end
context "with a nonstandard port" do
setup do
TCPSocket.stubs(:new).returns(new_mock_socket)
@conn = Connection.new('255.255.255.255', 2500, :connect => false)
admin_db = new_mock_db
admin_db.expects(:command).returns({'ok' => 1, 'ismaster' => 1})
@conn.expects(:[]).with('admin').returns(admin_db)
@conn.connect_to_master
end
should "set localhost and port correctly" do
assert_equal '255.255.255.255', @conn.host
assert_equal 2500, @conn.port
end
end
end

View File

@ -1,7 +1,5 @@
require 'test/test_helper'
class TestCursor < Test::Unit::TestCase
context "Cursor options" do
setup do
@connection = stub(:class => Connection)
@ -91,4 +89,3 @@ class TestCursor < Test::Unit::TestCase
assert_nil @cursor.fields
end
end
end

View File

@ -1,7 +1,7 @@
require 'test/test_helper'
class DBTest < Test::Unit::TestCase
context "DBTest: " do
setup do
def insert_message(db, documents)
documents = [documents] unless documents.is_a?(Array)
message = ByteBuffer.new
@ -10,6 +10,7 @@ class DBTest < Test::Unit::TestCase
documents.each { |doc| message.put_array(BSON.new.serialize(doc, true).to_a) }
message = db.add_message_headers(Mongo::Constants::OP_INSERT, message)
end
end
context "DB commands" do
setup do