Skip to content

Commit

Permalink
Merge dc10dc6 into 6bf8a45
Browse files Browse the repository at this point in the history
  • Loading branch information
hainesr committed Oct 19, 2018
2 parents 6bf8a45 + dc10dc6 commit 8a5017c
Show file tree
Hide file tree
Showing 11 changed files with 305 additions and 405 deletions.
2 changes: 1 addition & 1 deletion Rakefile
Expand Up @@ -39,7 +39,7 @@ task default: :test

Rake::TestTask.new do |t|
t.libs << 'test'
t.test_files = FileList['test/ts_container.rb']
t.test_files = FileList['test/**/*_test.rb']
t.verbose = true
end

Expand Down
15 changes: 5 additions & 10 deletions test/tc_create_dir.rb → test/create_dir_test.rb
Expand Up @@ -30,25 +30,20 @@
#
# Author: Robert Haines

require 'test/unit'
require 'test_helper'
require 'tmpdir'
require 'zip-container'

class TestCreateDir < Test::Unit::TestCase
class TestCreateDir < MiniTest::Test

def test_create_container
Dir.mktmpdir do |dir|
container = File.join(dir, 'empty.container')

assert_nothing_raised do
ZipContainer::Dir.create(container, $mimetype) do
assert File.exist?(File.join(container, 'mimetype'))
end
ZipContainer::Dir.create(container, TEST_MIMETYPE) do
assert File.exist?(File.join(container, 'mimetype'))
end

assert_nothing_raised(ZipContainer::MalformedContainerError, ZipContainer::ZipError) do
ZipContainer::Dir.verify!(container)
end
ZipContainer::Dir.verify!(container)
end
end
end
103 changes: 45 additions & 58 deletions test/tc_create_file.rb → test/create_file_test.rb
Expand Up @@ -30,29 +30,24 @@
#
# Author: Robert Haines

require 'test/unit'
require 'test_helper'
require 'tmpdir'
require 'zip-container'

class TestCreateFile < Test::Unit::TestCase
class TestCreateFile < MiniTest::Test

# Check creation of standard empty container files.
def test_create_standard_file
Dir.mktmpdir do |dir|
filename = File.join(dir, 'test.container')

assert_nothing_raised do
ZipContainer::File.create(filename, $mimetype) do |c|
assert(c.on_disk?)
refute(c.in_memory?)
ZipContainer::File.create(filename, TEST_MIMETYPE) do |c|
assert(c.on_disk?)
refute(c.in_memory?)

assert(c.find_entry('mimetype').local_header_offset.zero?)
end
assert(c.find_entry('mimetype').local_header_offset.zero?)
end

assert_nothing_raised(ZipContainer::MalformedContainerError, ZipContainer::ZipError) do
ZipContainer::File.verify!(filename)
end
ZipContainer::File.verify!(filename)
end
end

Expand All @@ -63,18 +58,14 @@ def test_create_mimetype_file
Dir.mktmpdir do |dir|
filename = File.join(dir, 'test.container')

assert_nothing_raised do
ZipContainer::File.create(filename, mimetype) do |c|
assert(c.on_disk?)
refute(c.in_memory?)
ZipContainer::File.create(filename, mimetype) do |c|
assert(c.on_disk?)
refute(c.in_memory?)

assert(c.find_entry('mimetype').local_header_offset.zero?)
end
assert(c.find_entry('mimetype').local_header_offset.zero?)
end

assert_nothing_raised(ZipContainer::MalformedContainerError, ZipContainer::ZipError) do
ZipContainer::File.verify!(filename)
end
ZipContainer::File.verify!(filename)
end
end

Expand All @@ -84,55 +75,51 @@ def test_create_contents_file
Dir.mktmpdir do |dir|
filename = File.join(dir, 'test.container')

assert_nothing_raised do
ZipContainer::File.create(filename, $mimetype) do |c|
assert(c.on_disk?)
refute(c.in_memory?)
ZipContainer::File.create(filename, TEST_MIMETYPE) do |c|
assert(c.on_disk?)
refute(c.in_memory?)

c.file.open('test.txt', 'w') do |f|
f.print 'testing'
end
c.file.open('test.txt', 'w') do |f|
f.print 'testing'
end

assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)
assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)

c.dir.mkdir('dir1')
c.mkdir('dir2')
c.dir.mkdir('dir1')
c.mkdir('dir2')

assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)
assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)

c.comment = 'A comment!'
c.comment = 'A comment!'

assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)
end
assert(c.commit_required?)
assert(c.commit)
refute(c.commit_required?)
refute(c.commit)
end

assert_nothing_raised(ZipContainer::MalformedContainerError, ZipContainer::ZipError) do
ZipContainer::File.open(filename) do |c|
assert(c.on_disk?)
refute(c.in_memory?)
ZipContainer::File.open(filename) do |c|
assert(c.on_disk?)
refute(c.in_memory?)

assert(c.file.exists?('test.txt'))
assert(c.file.exists?('dir1'))
assert(c.file.exists?('dir2'))
refute(c.file.exists?('dir3'))
assert(c.file.exists?('test.txt'))
assert(c.file.exists?('dir1'))
assert(c.file.exists?('dir2'))
refute(c.file.exists?('dir3'))

text = c.file.read('test.txt')
assert_equal('testing', text)
text = c.file.read('test.txt')
assert_equal('testing', text)

assert_equal('A comment!', c.comment)
assert_equal('A comment!', c.comment)

refute(c.commit_required?)
refute(c.commit)
end
refute(c.commit_required?)
refute(c.commit)
end
end
end
Expand Down
37 changes: 10 additions & 27 deletions test/tc_exceptions.rb → test/exceptions_test.rb
Expand Up @@ -30,71 +30,54 @@
#
# Author: Robert Haines

require 'test/unit'
require 'zip-container'
require 'test_helper'

class TestExceptions < Test::Unit::TestCase
class TestExceptions < MiniTest::Test

def test_rescue_container_errors
assert_raise(ZipContainer::Error) do
assert_raises(ZipContainer::Error) do
raise ZipContainer::ZipError
end

assert_raise(ZipContainer::Error) do
assert_raises(ZipContainer::Error) do
raise ZipContainer::MalformedContainerError
end

assert_raise(ZipContainer::Error) do
assert_raises(ZipContainer::Error) do
raise ZipContainer::ReservedNameClashError, 'test'
end

assert_raise(ZipContainer::Error) do
assert_raises(ZipContainer::Error) do
raise Zip::ZipError
end
end

def test_malformed_container_error_nil
mce = nil

assert_nothing_raised do
mce = ZipContainer::MalformedContainerError.new(nil)
end
mce = ZipContainer::MalformedContainerError.new(nil)

refute mce.message.empty?
refute mce.message.include?(':')
end

def test_malformed_container_error_empty_string
mce = nil

assert_nothing_raised do
mce = ZipContainer::MalformedContainerError.new('')
end
mce = ZipContainer::MalformedContainerError.new('')

refute mce.message.empty?
refute mce.message.include?(':')
end

def test_malformed_container_error_string
mce = nil
message = 'test'

assert_nothing_raised do
mce = ZipContainer::MalformedContainerError.new(message)
end
mce = ZipContainer::MalformedContainerError.new(message)

refute mce.message.empty?
assert mce.message.include?(':')
assert mce.message.include?(message)
end

def test_malformed_container_error_list
mce = nil
message = %w[test1 test2]

assert_nothing_raised do
mce = ZipContainer::MalformedContainerError.new(message)
end
mce = ZipContainer::MalformedContainerError.new(message)

refute mce.message.empty?
assert mce.message.include?(':')
Expand Down

0 comments on commit 8a5017c

Please sign in to comment.