From df27b5e7d6cb210b5a0870eb671a983336fb95c7 Mon Sep 17 00:00:00 2001 From: scott Chacon Date: Wed, 14 Nov 2007 10:24:22 -0800 Subject: added 'archive' and tests --- tests/units/test_archive.rb | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/units/test_archive.rb (limited to 'tests/units/test_archive.rb') diff --git a/tests/units/test_archive.rb b/tests/units/test_archive.rb new file mode 100644 index 0000000..2e405b3 --- /dev/null +++ b/tests/units/test_archive.rb @@ -0,0 +1,44 @@ +#!/usr/bin/env ruby + +require File.dirname(__FILE__) + '/../test_helper' + +class TestArchive < Test::Unit::TestCase + + def setup + set_file_paths + @git = Git.open(@wdir) + end + + def tempfile + Tempfile.new('archive-test').path + end + + def test_archive + f = @git.archive('v2.6', tempfile) + assert(File.exists?(f)) + + f = @git.object('v2.6').archive(tempfile) # writes to given file + assert(File.exists?(f)) + + f = @git.object('v2.6').archive # returns path to temp file + assert(File.exists?(f)) + + f = @git.object('v2.6').archive(tempfile, :format => 'zip') + assert(File.file?(f)) + + f = @git.object('v2.6').archive(tempfile, :format => 'tgz', :prefix => 'test/') + assert(File.exists?(f)) + + f = @git.object('v2.6').archive(tempfile, :format => 'tar', :prefix => 'test/', :path => 'ex') + assert(File.exists?(f)) + + in_temp_dir do + c = Git.clone(@wbare, 'new') + c.chdir do + f = @git.remote('origin').branch('master').archive(tempfile, :format => 'tgz') + assert(File.exists?(f)) + end + end + end + +end \ No newline at end of file -- cgit