#!/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