jeremylightsmith-piston 1.9.3
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.
- data/.gitignore +6 -0
- data/History.txt +6 -0
- data/License.txt +20 -0
- data/Manifest.txt +86 -0
- data/README.txt +136 -0
- data/Rakefile +4 -0
- data/bin/piston +5 -0
- data/config/hoe.rb +76 -0
- data/config/requirements.rb +18 -0
- data/lib/piston.rb +18 -0
- data/lib/piston/cli.rb +279 -0
- data/lib/piston/commands.rb +4 -0
- data/lib/piston/commands/base.rb +44 -0
- data/lib/piston/commands/import.rb +69 -0
- data/lib/piston/commands/info.rb +14 -0
- data/lib/piston/commands/lock_unlock.rb +21 -0
- data/lib/piston/commands/update.rb +28 -0
- data/lib/piston/git.rb +12 -0
- data/lib/piston/git/client.rb +77 -0
- data/lib/piston/git/commit.rb +70 -0
- data/lib/piston/git/repository.rb +63 -0
- data/lib/piston/git/working_copy.rb +63 -0
- data/lib/piston/repository.rb +57 -0
- data/lib/piston/revision.rb +48 -0
- data/lib/piston/svn.rb +14 -0
- data/lib/piston/svn/client.rb +88 -0
- data/lib/piston/svn/repository.rb +67 -0
- data/lib/piston/svn/revision.rb +74 -0
- data/lib/piston/svn/working_copy.rb +55 -0
- data/lib/piston/version.rb +9 -0
- data/lib/piston/working_copy.rb +129 -0
- data/lib/subclass_responsibility_error.rb +2 -0
- data/log/.gitignore +0 -0
- data/samples/common.rb +19 -0
- data/samples/import_git_git.rb +39 -0
- data/samples/import_git_svn.rb +36 -0
- data/samples/import_svn_git.rb +29 -0
- data/samples/import_svn_svn.rb +24 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/script/txt2html +74 -0
- data/setup.rb +1585 -0
- data/tasks/deployment.rake +40 -0
- data/tasks/environment.rake +7 -0
- data/tasks/samples.rake +6 -0
- data/tasks/test.rake +30 -0
- data/tasks/website.rake +17 -0
- data/test/integration/test_import_git_git.rb +96 -0
- data/test/integration/test_import_git_svn.rb +131 -0
- data/test/integration/test_import_svn_git.rb +52 -0
- data/test/integration/test_import_svn_svn.rb +43 -0
- data/test/integration_helpers.rb +33 -0
- data/test/test_helper.rb +56 -0
- data/test/unit/git/commit/test_checkout.rb +30 -0
- data/test/unit/git/commit/test_each.rb +36 -0
- data/test/unit/git/commit/test_rememberance.rb +20 -0
- data/test/unit/git/commit/test_validation.rb +33 -0
- data/test/unit/git/repository/test_at.rb +22 -0
- data/test/unit/git/repository/test_basename.rb +12 -0
- data/test/unit/git/repository/test_branchanme.rb +15 -0
- data/test/unit/git/repository/test_guessing.rb +32 -0
- data/test/unit/git/working_copy/test_copying.rb +28 -0
- data/test/unit/git/working_copy/test_creation.rb +26 -0
- data/test/unit/git/working_copy/test_existence.rb +21 -0
- data/test/unit/git/working_copy/test_finalization.rb +18 -0
- data/test/unit/git/working_copy/test_guessing.rb +34 -0
- data/test/unit/git/working_copy/test_rememberance.rb +25 -0
- data/test/unit/svn/repository/test_at.rb +18 -0
- data/test/unit/svn/repository/test_basename.rb +24 -0
- data/test/unit/svn/repository/test_guessing.rb +45 -0
- data/test/unit/svn/revision/test_checkout.rb +27 -0
- data/test/unit/svn/revision/test_each.rb +21 -0
- data/test/unit/svn/revision/test_rememberance.rb +42 -0
- data/test/unit/svn/revision/test_validation.rb +49 -0
- data/test/unit/svn/working_copy/test_copying.rb +29 -0
- data/test/unit/svn/working_copy/test_creation.rb +19 -0
- data/test/unit/svn/working_copy/test_existence.rb +26 -0
- data/test/unit/svn/working_copy/test_finalization.rb +21 -0
- data/test/unit/svn/working_copy/test_guessing.rb +17 -0
- data/test/unit/svn/working_copy/test_rememberance.rb +26 -0
- data/test/unit/test_import.rb +13 -0
- data/test/unit/test_info.rb +36 -0
- data/test/unit/test_lock_unlock.rb +46 -0
- data/test/unit/test_repository.rb +50 -0
- data/test/unit/test_revision.rb +30 -0
- data/test/unit/working_copy/test_guessing.rb +34 -0
- data/test/unit/working_copy/test_info.rb +13 -0
- data/test/unit/working_copy/test_rememberance.rb +48 -0
- data/test/unit/working_copy/test_validate.rb +68 -0
- data/website/index.html +11 -0
- data/website/index.txt +39 -0
- data/website/javascripts/rounded_corners_lite.inc.js +285 -0
- data/website/stylesheets/screen.css +138 -0
- data/website/template.rhtml +48 -0
- metadata +228 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
desc 'Release the website and new gem version'
|
|
2
|
+
task :deploy => [:check_version, :website, :release] do
|
|
3
|
+
puts "Remember to create SVN tag:"
|
|
4
|
+
puts "svn copy svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/trunk " +
|
|
5
|
+
"svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/tags/REL-#{VERS} "
|
|
6
|
+
puts "Suggested comment:"
|
|
7
|
+
puts "Tagging release #{CHANGES}"
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
desc 'Runs tasks website_generate and install_gem as a local deployment of the gem'
|
|
11
|
+
task :local_deploy => [:website_generate, :install_gem]
|
|
12
|
+
|
|
13
|
+
task :check_version do
|
|
14
|
+
unless ENV['VERSION']
|
|
15
|
+
puts 'Must pass a VERSION=x.y.z release version'
|
|
16
|
+
exit
|
|
17
|
+
end
|
|
18
|
+
unless ENV['VERSION'] == VERS
|
|
19
|
+
puts "Please update your version.rb to match the release version, currently #{VERS}"
|
|
20
|
+
exit
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
desc 'Install the package as a gem, without generating documentation(ri/rdoc)'
|
|
25
|
+
task :install_gem_no_doc => [:clean, :package] do
|
|
26
|
+
sh "#{'sudo ' unless Hoe::WINDOZE }gem install pkg/*.gem --no-rdoc --no-ri"
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
namespace :manifest do
|
|
30
|
+
desc 'Recreate Manifest.txt to include ALL files'
|
|
31
|
+
task :refresh do
|
|
32
|
+
`rake check_manifest | patch -p0 > Manifest.txt`
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
desc 'Generate Gemspec file for GitHub'
|
|
37
|
+
task :refresh_gemspec do
|
|
38
|
+
gemspec = `rake debug_gem`.split("\n")[1..-1].join("\n")
|
|
39
|
+
File.open("piston.gemspec", "w") {|f| f << gemspec }
|
|
40
|
+
end
|
data/tasks/samples.rake
ADDED
data/tasks/test.rake
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require "rake/testtask"
|
|
2
|
+
|
|
3
|
+
namespace :test do
|
|
4
|
+
Rake::TestTask.new("units") do |t|
|
|
5
|
+
t.libs << "test"
|
|
6
|
+
t.test_files = FileList['test/unit/**/test_*.rb']
|
|
7
|
+
t.verbose = true
|
|
8
|
+
t.warning = false
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
Rake::TestTask.new("integration") do |t|
|
|
12
|
+
t.libs << "test"
|
|
13
|
+
t.test_files = FileList['test/integration/**/test_*.rb']
|
|
14
|
+
t.verbose = true
|
|
15
|
+
t.warning = false
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
Rake::TestTask.new("recent") do |t|
|
|
19
|
+
t.libs << "test"
|
|
20
|
+
t.verbose = true
|
|
21
|
+
t.warning = false
|
|
22
|
+
|
|
23
|
+
# 10 minutes ago
|
|
24
|
+
cutoff_at = Time.now - 10 * 60
|
|
25
|
+
|
|
26
|
+
t.test_files = FileList["test/integration/**/test_*.rb", "test/unit/**/test_*.rb"].select do |path|
|
|
27
|
+
File.mtime(path) > cutoff_at
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
data/tasks/website.rake
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
desc 'Generate website files'
|
|
2
|
+
task :website_generate => :ruby_env do
|
|
3
|
+
(Dir['website/**/*.txt'] - Dir['website/version*.txt']).each do |txt|
|
|
4
|
+
sh %{ #{RUBY_APP} script/txt2html #{txt} > #{txt.gsub(/txt$/,'html')} }
|
|
5
|
+
end
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
desc 'Upload website files to rubyforge'
|
|
9
|
+
task :website_upload do
|
|
10
|
+
host = "#{rubyforge_username}@rubyforge.org"
|
|
11
|
+
remote_dir = "/var/www/gforge-projects/#{PATH}/"
|
|
12
|
+
local_dir = 'website'
|
|
13
|
+
sh %{rsync -aCv #{local_dir}/ #{host}:#{remote_dir}}
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
desc 'Generate and upload website files'
|
|
17
|
+
task :website => [:website_generate, :website_upload, :publish_docs]
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + "/../test_helper"
|
|
2
|
+
require File.dirname(__FILE__) + "/../integration_helpers"
|
|
3
|
+
|
|
4
|
+
class TestImportGitGit < Test::Unit::TestCase
|
|
5
|
+
attr_reader :root_path, :repos_path, :wc_path
|
|
6
|
+
|
|
7
|
+
def setup
|
|
8
|
+
@root_path = Pathname.new("/tmp/import_git_git")
|
|
9
|
+
@wc_path = @root_path + "wc"
|
|
10
|
+
|
|
11
|
+
root_path.rmtree rescue nil
|
|
12
|
+
root_path.mkpath
|
|
13
|
+
|
|
14
|
+
wc_path.mkpath
|
|
15
|
+
Dir.chdir(wc_path) do
|
|
16
|
+
git(:init)
|
|
17
|
+
File.open(wc_path + "README", "wb") {|f| f.write "Hello World!"}
|
|
18
|
+
(wc_path + "vendor").mkdir
|
|
19
|
+
File.open(wc_path + "vendor/.gitignore", "wb") {|f| f.write "*.swp"}
|
|
20
|
+
git(:add, ".")
|
|
21
|
+
git(:commit, "-m", "'first commit'")
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def teardown
|
|
26
|
+
root_path.rmtree rescue nil
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def test_import
|
|
30
|
+
piston(:import, "git://github.com/technoweenie/attachment_fu.git", wc_path + "vendor/attachment_fu")
|
|
31
|
+
|
|
32
|
+
Dir.chdir(wc_path) do
|
|
33
|
+
assert_equal STATUS.split("\n").sort, git(:status).split("\n").sort
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
info = YAML.load(File.read(wc_path + "vendor/attachment_fu/.piston.yml"))
|
|
37
|
+
assert_equal 1, info["format"]
|
|
38
|
+
assert_equal "git://github.com/technoweenie/attachment_fu.git", info["repository_url"]
|
|
39
|
+
assert_equal "Piston::Git::Repository", info["repository_class"]
|
|
40
|
+
|
|
41
|
+
response = `git-ls-remote git://github.com/technoweenie/attachment_fu.git`
|
|
42
|
+
head_commit = response.grep(/HEAD/).first.chomp.split(/\s+/).first
|
|
43
|
+
assert_equal head_commit, info["handler"][Piston::Git::COMMIT]
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
STATUS = %Q(# On branch master
|
|
47
|
+
# Changes to be committed:
|
|
48
|
+
# (use "git reset HEAD <file>..." to unstage)
|
|
49
|
+
#
|
|
50
|
+
#\tnew file: vendor/attachment_fu/.piston.yml
|
|
51
|
+
#\tnew file: vendor/attachment_fu/CHANGELOG
|
|
52
|
+
#\tnew file: vendor/attachment_fu/README
|
|
53
|
+
#\tnew file: vendor/attachment_fu/Rakefile
|
|
54
|
+
#\tnew file: vendor/attachment_fu/amazon_s3.yml.tpl
|
|
55
|
+
#\tnew file: vendor/attachment_fu/init.rb
|
|
56
|
+
#\tnew file: vendor/attachment_fu/install.rb
|
|
57
|
+
#\tnew file: vendor/attachment_fu/lib/geometry.rb
|
|
58
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu.rb
|
|
59
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb
|
|
60
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb
|
|
61
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb
|
|
62
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/core_image_processor.rb
|
|
63
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/gd2_processor.rb
|
|
64
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb
|
|
65
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb
|
|
66
|
+
#\tnew file: vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb
|
|
67
|
+
#\tnew file: vendor/attachment_fu/test/backends/db_file_test.rb
|
|
68
|
+
#\tnew file: vendor/attachment_fu/test/backends/file_system_test.rb
|
|
69
|
+
#\tnew file: vendor/attachment_fu/test/backends/remote/s3_test.rb
|
|
70
|
+
#\tnew file: vendor/attachment_fu/test/base_attachment_tests.rb
|
|
71
|
+
#\tnew file: vendor/attachment_fu/test/basic_test.rb
|
|
72
|
+
#\tnew file: vendor/attachment_fu/test/database.yml
|
|
73
|
+
#\tnew file: vendor/attachment_fu/test/extra_attachment_test.rb
|
|
74
|
+
#\tnew file: vendor/attachment_fu/test/fixtures/attachment.rb
|
|
75
|
+
#\tnew file: vendor/attachment_fu/test/fixtures/files/fake/rails.png
|
|
76
|
+
#\tnew file: vendor/attachment_fu/test/fixtures/files/foo.txt
|
|
77
|
+
#\tnew file: vendor/attachment_fu/test/fixtures/files/rails.png
|
|
78
|
+
#\tnew file: vendor/attachment_fu/test/geometry_test.rb
|
|
79
|
+
#\tnew file: vendor/attachment_fu/test/processors/core_image_test.rb
|
|
80
|
+
#\tnew file: vendor/attachment_fu/test/processors/gd2_test.rb
|
|
81
|
+
#\tnew file: vendor/attachment_fu/test/processors/image_science_test.rb
|
|
82
|
+
#\tnew file: vendor/attachment_fu/test/processors/mini_magick_test.rb
|
|
83
|
+
#\tnew file: vendor/attachment_fu/test/processors/rmagick_test.rb
|
|
84
|
+
#\tnew file: vendor/attachment_fu/test/schema.rb
|
|
85
|
+
#\tnew file: vendor/attachment_fu/test/test_helper.rb
|
|
86
|
+
#\tnew file: vendor/attachment_fu/test/validation_test.rb
|
|
87
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/color.rb
|
|
88
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/effects.rb
|
|
89
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/perspective.rb
|
|
90
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/quality.rb
|
|
91
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/scale.rb
|
|
92
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/filters/watermark.rb
|
|
93
|
+
#\tnew file: vendor/attachment_fu/vendor/red_artisan/core_image/processor.rb
|
|
94
|
+
#
|
|
95
|
+
)
|
|
96
|
+
end
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + "/../test_helper"
|
|
2
|
+
require File.dirname(__FILE__) + "/../integration_helpers"
|
|
3
|
+
|
|
4
|
+
class TestImportGitSvn < Test::Unit::TestCase
|
|
5
|
+
attr_reader :root_path, :repos_path, :wc_path
|
|
6
|
+
|
|
7
|
+
def setup
|
|
8
|
+
@root_path = Pathname.new("/tmp/import_git_svn")
|
|
9
|
+
@repos_path = @root_path + "repos"
|
|
10
|
+
@wc_path = @root_path + "wc"
|
|
11
|
+
|
|
12
|
+
root_path.rmtree rescue nil
|
|
13
|
+
root_path.mkpath
|
|
14
|
+
|
|
15
|
+
svnadmin :create, repos_path
|
|
16
|
+
svn :checkout, "file://#{repos_path}", wc_path
|
|
17
|
+
svn :mkdir, wc_path + "trunk", wc_path + "tags", wc_path + "branches", wc_path + "trunk/vendor"
|
|
18
|
+
svn :commit, wc_path, "--message", "'first commit'"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def teardown
|
|
22
|
+
root_path.rmtree rescue nil
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def test_import
|
|
26
|
+
piston(:import, "git://github.com/technoweenie/attachment_fu.git", wc_path + "trunk/vendor/attachment_fu")
|
|
27
|
+
|
|
28
|
+
assert_equal ADD_STATUS.split("\n").sort, svn(:status, wc_path + "trunk/vendor").gsub((wc_path + "trunk/").to_s, "").split("\n").sort
|
|
29
|
+
|
|
30
|
+
info = YAML.load(File.read(wc_path + "trunk/vendor/attachment_fu/.piston.yml"))
|
|
31
|
+
assert_equal 1, info["format"]
|
|
32
|
+
assert_equal "git://github.com/technoweenie/attachment_fu.git", info["repository_url"]
|
|
33
|
+
assert_equal "Piston::Git::Repository", info["repository_class"]
|
|
34
|
+
|
|
35
|
+
response = `git-ls-remote git://github.com/technoweenie/attachment_fu.git`
|
|
36
|
+
head_commit = response.grep(/HEAD/).first.chomp.split(/\s+/).first
|
|
37
|
+
assert_equal head_commit, info["handler"][Piston::Git::COMMIT]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def test_import_from_branch
|
|
41
|
+
piston(:import, "--revision", "origin/rewrite", "git://github.com/technoweenie/attachment_fu.git", wc_path + "trunk/vendor/attachment_fu")
|
|
42
|
+
|
|
43
|
+
assert File.directory?(wc_path + "trunk/vendor/attachment_fu/vendor"),
|
|
44
|
+
"Could not find vendor director in attachment_fu imported directory: please check that there still exists a rewrite branch on GitHub AND that the rewrite branch has a vendor/ directory."
|
|
45
|
+
|
|
46
|
+
info = YAML.load(File.read(wc_path + "trunk/vendor/attachment_fu/.piston.yml"))
|
|
47
|
+
assert_equal 1, info["format"]
|
|
48
|
+
assert_equal "git://github.com/technoweenie/attachment_fu.git", info["repository_url"]
|
|
49
|
+
assert_equal "Piston::Git::Repository", info["repository_class"]
|
|
50
|
+
|
|
51
|
+
response = `git-ls-remote git://github.com/technoweenie/attachment_fu.git`
|
|
52
|
+
head_commit = response.grep(/refs\/heads\/rewrite/).first.chomp.split(/\s+/).first
|
|
53
|
+
assert_equal head_commit, info["handler"][Piston::Git::COMMIT]
|
|
54
|
+
assert_equal "origin/rewrite", info["handler"][Piston::Git::BRANCH]
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def test_import_from_tag
|
|
58
|
+
piston(:import, "--revision", "1.9.1", "git://github.com/francois/piston.git", wc_path + "trunk/vendor/piston")
|
|
59
|
+
|
|
60
|
+
info = YAML.load(File.read(wc_path + "trunk/vendor/piston/.piston.yml"))
|
|
61
|
+
assert_equal 1, info["format"]
|
|
62
|
+
assert_equal "git://github.com/francois/piston.git", info["repository_url"]
|
|
63
|
+
assert_equal "Piston::Git::Repository", info["repository_class"]
|
|
64
|
+
|
|
65
|
+
assert_equal "684301c8b5cc1c95fe1568fb80e8f4da20c2a235", info["handler"][Piston::Git::COMMIT]
|
|
66
|
+
assert_equal "1.9.1", info["handler"][Piston::Git::BRANCH]
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
ADD_STATUS = %Q(A vendor/attachment_fu
|
|
70
|
+
A vendor/attachment_fu/test
|
|
71
|
+
A vendor/attachment_fu/test/test_helper.rb
|
|
72
|
+
A vendor/attachment_fu/test/processors
|
|
73
|
+
A vendor/attachment_fu/test/processors/mini_magick_test.rb
|
|
74
|
+
A vendor/attachment_fu/test/processors/core_image_test.rb
|
|
75
|
+
A vendor/attachment_fu/test/processors/image_science_test.rb
|
|
76
|
+
A vendor/attachment_fu/test/processors/gd2_test.rb
|
|
77
|
+
A vendor/attachment_fu/test/processors/rmagick_test.rb
|
|
78
|
+
A vendor/attachment_fu/test/basic_test.rb
|
|
79
|
+
A vendor/attachment_fu/test/schema.rb
|
|
80
|
+
A vendor/attachment_fu/test/database.yml
|
|
81
|
+
A vendor/attachment_fu/test/base_attachment_tests.rb
|
|
82
|
+
A vendor/attachment_fu/test/fixtures
|
|
83
|
+
A vendor/attachment_fu/test/fixtures/files
|
|
84
|
+
A vendor/attachment_fu/test/fixtures/files/foo.txt
|
|
85
|
+
A vendor/attachment_fu/test/fixtures/files/fake
|
|
86
|
+
A vendor/attachment_fu/test/fixtures/files/fake/rails.png
|
|
87
|
+
A vendor/attachment_fu/test/fixtures/files/rails.png
|
|
88
|
+
A vendor/attachment_fu/test/fixtures/attachment.rb
|
|
89
|
+
A vendor/attachment_fu/test/backends
|
|
90
|
+
A vendor/attachment_fu/test/backends/file_system_test.rb
|
|
91
|
+
A vendor/attachment_fu/test/backends/db_file_test.rb
|
|
92
|
+
A vendor/attachment_fu/test/backends/remote
|
|
93
|
+
A vendor/attachment_fu/test/backends/remote/s3_test.rb
|
|
94
|
+
A vendor/attachment_fu/test/validation_test.rb
|
|
95
|
+
A vendor/attachment_fu/test/extra_attachment_test.rb
|
|
96
|
+
A vendor/attachment_fu/test/geometry_test.rb
|
|
97
|
+
A vendor/attachment_fu/Rakefile
|
|
98
|
+
A vendor/attachment_fu/init.rb
|
|
99
|
+
A vendor/attachment_fu/lib
|
|
100
|
+
A vendor/attachment_fu/lib/technoweenie
|
|
101
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu
|
|
102
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors
|
|
103
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb
|
|
104
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/core_image_processor.rb
|
|
105
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb
|
|
106
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/gd2_processor.rb
|
|
107
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb
|
|
108
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/backends
|
|
109
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb
|
|
110
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb
|
|
111
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb
|
|
112
|
+
A vendor/attachment_fu/lib/technoweenie/attachment_fu.rb
|
|
113
|
+
A vendor/attachment_fu/lib/geometry.rb
|
|
114
|
+
A vendor/attachment_fu/CHANGELOG
|
|
115
|
+
A vendor/attachment_fu/amazon_s3.yml.tpl
|
|
116
|
+
A vendor/attachment_fu/install.rb
|
|
117
|
+
A vendor/attachment_fu/.piston.yml
|
|
118
|
+
A vendor/attachment_fu/vendor
|
|
119
|
+
A vendor/attachment_fu/vendor/red_artisan
|
|
120
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image
|
|
121
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/processor.rb
|
|
122
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters
|
|
123
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/watermark.rb
|
|
124
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/color.rb
|
|
125
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/effects.rb
|
|
126
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/scale.rb
|
|
127
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/quality.rb
|
|
128
|
+
A vendor/attachment_fu/vendor/red_artisan/core_image/filters/perspective.rb
|
|
129
|
+
A vendor/attachment_fu/README
|
|
130
|
+
)
|
|
131
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + "/../test_helper"
|
|
2
|
+
require File.dirname(__FILE__) + "/../integration_helpers"
|
|
3
|
+
|
|
4
|
+
class TestImportSvnGit < Test::Unit::TestCase
|
|
5
|
+
attr_reader :root_path, :repos_path, :wc_path
|
|
6
|
+
|
|
7
|
+
def setup
|
|
8
|
+
@root_path = Pathname.new("/tmp/import_svn_git")
|
|
9
|
+
@repos_path = @root_path + "repos"
|
|
10
|
+
@wc_path = @root_path + "wc"
|
|
11
|
+
|
|
12
|
+
root_path.rmtree rescue nil
|
|
13
|
+
root_path.mkpath
|
|
14
|
+
|
|
15
|
+
wc_path.mkpath
|
|
16
|
+
Dir.chdir(wc_path) do
|
|
17
|
+
git(:init)
|
|
18
|
+
File.open(wc_path + "README", "wb") {|f| f.write "Hello World!"}
|
|
19
|
+
(wc_path + "vendor").mkdir
|
|
20
|
+
File.open(wc_path + "vendor/.gitignore", "wb") {|f| f.write "*.swp"}
|
|
21
|
+
git(:add, ".")
|
|
22
|
+
git(:commit, "-m", "'first commit'")
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def teardown
|
|
27
|
+
root_path.rmtree rescue nil
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def test_import
|
|
31
|
+
piston :import, "http://dev.rubyonrails.org/svn/rails/plugins/ssl_requirement/", wc_path + "vendor/ssl_requirement"
|
|
32
|
+
|
|
33
|
+
Dir.chdir(wc_path) do
|
|
34
|
+
assert_equal %Q(# On branch master
|
|
35
|
+
# Changes to be committed:
|
|
36
|
+
# (use "git reset HEAD <file>..." to unstage)
|
|
37
|
+
#
|
|
38
|
+
#\tnew file: vendor/ssl_requirement/.piston.yml
|
|
39
|
+
#\tnew file: vendor/ssl_requirement/README
|
|
40
|
+
#\tnew file: vendor/ssl_requirement/lib/ssl_requirement.rb
|
|
41
|
+
#\tnew file: vendor/ssl_requirement/test/ssl_requirement_test.rb
|
|
42
|
+
#
|
|
43
|
+
).split("\n").sort, git(:status).split("\n").sort
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
info = YAML.load(File.read(wc_path + "vendor/ssl_requirement/.piston.yml"))
|
|
47
|
+
assert_equal 1, info["format"]
|
|
48
|
+
assert_equal "http://dev.rubyonrails.org/svn/rails/plugins/ssl_requirement/", info["repository_url"]
|
|
49
|
+
assert_equal "Piston::Svn::Repository", info["repository_class"]
|
|
50
|
+
assert_equal "5ecf4fe2-1ee6-0310-87b1-e25e094e27de", info["handler"][Piston::Svn::UUID]
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + "/../test_helper"
|
|
2
|
+
require File.dirname(__FILE__) + "/../integration_helpers"
|
|
3
|
+
|
|
4
|
+
class TestImportSvnSvn < Test::Unit::TestCase
|
|
5
|
+
attr_reader :root_path, :repos_path, :wc_path
|
|
6
|
+
|
|
7
|
+
def setup
|
|
8
|
+
@root_path = Pathname.new("/tmp/import_svn_svn")
|
|
9
|
+
@repos_path = @root_path + "repos"
|
|
10
|
+
@wc_path = @root_path + "wc"
|
|
11
|
+
|
|
12
|
+
root_path.rmtree rescue nil
|
|
13
|
+
root_path.mkpath
|
|
14
|
+
|
|
15
|
+
svnadmin :create, repos_path
|
|
16
|
+
svn :checkout, "file://#{repos_path}", wc_path
|
|
17
|
+
svn :mkdir, wc_path + "trunk", wc_path + "tags", wc_path + "branches", wc_path + "trunk/vendor"
|
|
18
|
+
svn :commit, wc_path, "--message", "'first commit'"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def teardown
|
|
22
|
+
root_path.rmtree rescue nil
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def test_import
|
|
26
|
+
piston :import, "http://dev.rubyonrails.org/svn/rails/plugins/ssl_requirement/", wc_path + "trunk/vendor/ssl_requirement"
|
|
27
|
+
|
|
28
|
+
assert_equal "A vendor/ssl_requirement
|
|
29
|
+
A vendor/ssl_requirement/test
|
|
30
|
+
A vendor/ssl_requirement/test/ssl_requirement_test.rb
|
|
31
|
+
A vendor/ssl_requirement/lib
|
|
32
|
+
A vendor/ssl_requirement/lib/ssl_requirement.rb
|
|
33
|
+
A vendor/ssl_requirement/.piston.yml
|
|
34
|
+
A vendor/ssl_requirement/README
|
|
35
|
+
".split("\n").sort, svn(:status, wc_path + "trunk/vendor/").gsub((wc_path + "trunk/").to_s, "").split("\n").sort
|
|
36
|
+
|
|
37
|
+
info = YAML.load(File.read(wc_path + "trunk/vendor/ssl_requirement/.piston.yml"))
|
|
38
|
+
assert_equal 1, info["format"]
|
|
39
|
+
assert_equal "http://dev.rubyonrails.org/svn/rails/plugins/ssl_requirement/", info["repository_url"]
|
|
40
|
+
assert_equal "Piston::Svn::Repository", info["repository_class"]
|
|
41
|
+
assert_equal "5ecf4fe2-1ee6-0310-87b1-e25e094e27de", info["handler"][Piston::Svn::UUID]
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
PISTON_ROOT = Pathname.new(File.dirname(__FILE__)).parent.realpath
|
|
2
|
+
|
|
3
|
+
def logger
|
|
4
|
+
@logger ||= Log4r::Logger["test"]
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
def runcmd(cmd, *args)
|
|
8
|
+
cmdline = [cmd]
|
|
9
|
+
cmdline += args
|
|
10
|
+
cmdline = cmdline.flatten.map {|s| s.to_s}.join(" ")
|
|
11
|
+
logger.debug "> #{cmdline}"
|
|
12
|
+
|
|
13
|
+
output = `#{cmdline}`
|
|
14
|
+
logger.debug "< #{output}"
|
|
15
|
+
return output if $?.success?
|
|
16
|
+
raise output
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def svn(*args)
|
|
20
|
+
runcmd(:svn, *args)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def svnadmin(*args)
|
|
24
|
+
runcmd(:svnadmin, *args)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def git(*args)
|
|
28
|
+
runcmd(:git, *args)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def piston(*args)
|
|
32
|
+
runcmd(:ruby, "-I", PISTON_ROOT + "lib", PISTON_ROOT + "bin/piston", *args)
|
|
33
|
+
end
|