PageRenderTime 44ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/vendor/jruby-1.1.6RC1/lib/ruby/gems/1.8/gems/rake-0.8.3/test/test_package_task.rb

https://bitbucket.org/nicksieger/advent-jruby
Ruby | 116 lines | 104 code | 11 blank | 1 comment | 1 complexity | ef919371c25d77f4441319a28b421c7d MD5 | raw file
Possible License(s): CPL-1.0, AGPL-1.0, LGPL-2.1, JSON
  1. #!/usr/bin/env ruby
  2. require 'test/unit'
  3. require 'rake/packagetask'
  4. class TestPackageTask < Test::Unit::TestCase
  5. include Rake
  6. def test_create
  7. pkg = Rake::PackageTask.new("pkgr", "1.2.3") { |p|
  8. p.package_files << "install.rb"
  9. p.package_files.include(
  10. '[A-Z]*',
  11. 'bin/**/*',
  12. 'lib/**/*.rb',
  13. 'test/**/*.rb',
  14. 'doc/**/*',
  15. 'build/rubyapp.rb',
  16. '*.blurb')
  17. p.package_files.exclude(/\bCVS\b/)
  18. p.package_files.exclude(/~$/)
  19. p.package_dir = 'pkg'
  20. p.need_tar = true
  21. p.need_tar_gz = true
  22. p.need_tar_bz2 = true
  23. p.need_zip = true
  24. }
  25. assert_equal "pkg", pkg.package_dir
  26. assert pkg.package_files.include?("bin/rake")
  27. assert "pkgr", pkg.name
  28. assert "1.2.3", pkg.version
  29. assert Task[:package]
  30. assert Task['pkg/pkgr-1.2.3.tgz']
  31. assert Task['pkg/pkgr-1.2.3.tar.gz']
  32. assert Task['pkg/pkgr-1.2.3.tar.bz2']
  33. assert Task['pkg/pkgr-1.2.3.zip']
  34. assert Task["pkg/pkgr-1.2.3"]
  35. assert Task[:clobber_package]
  36. assert Task[:repackage]
  37. end
  38. def test_missing_version
  39. assert_raises(RuntimeError) {
  40. pkg = Rake::PackageTask.new("pkgr") { |p| }
  41. }
  42. end
  43. def test_no_version
  44. pkg = Rake::PackageTask.new("pkgr", :noversion) { |p| }
  45. assert "pkgr", pkg.send(:package_name)
  46. end
  47. def test_clone
  48. pkg = Rake::PackageTask.new("x", :noversion)
  49. p2 = pkg.clone
  50. pkg.package_files << "y"
  51. p2.package_files << "x"
  52. assert_equal ["y"], pkg.package_files
  53. assert_equal ["x"], p2.package_files
  54. end
  55. end
  56. begin
  57. require 'rubygems'
  58. require 'rake/gempackagetask'
  59. rescue Exception
  60. puts "WARNING: RubyGems not installed"
  61. end
  62. if ! defined?(Gem)
  63. puts "WARNING: Unable to test GemPackaging ... requires RubyGems"
  64. else
  65. class TestGemPackageTask < Test::Unit::TestCase
  66. def test_gem_package
  67. gem = Gem::Specification.new do |g|
  68. g.name = "pkgr"
  69. g.version = "1.2.3"
  70. g.files = FileList["x"].resolve
  71. end
  72. pkg = Rake::GemPackageTask.new(gem) do |p|
  73. p.package_files << "y"
  74. end
  75. assert_equal ["x", "y"], pkg.package_files
  76. assert_equal "pkgr-1.2.3.gem", pkg.gem_file
  77. end
  78. def test_gem_package_with_current_platform
  79. gem = Gem::Specification.new do |g|
  80. g.name = "pkgr"
  81. g.version = "1.2.3"
  82. g.files = FileList["x"].resolve
  83. g.platform = Gem::Platform::CURRENT
  84. end
  85. pkg = Rake::GemPackageTask.new(gem) do |p|
  86. p.package_files << "y"
  87. end
  88. assert_equal ["x", "y"], pkg.package_files
  89. assert_match(/^pkgr-1\.2\.3-(\S+)\.gem$/, pkg.gem_file)
  90. end
  91. def test_gem_package_with_ruby_platform
  92. gem = Gem::Specification.new do |g|
  93. g.name = "pkgr"
  94. g.version = "1.2.3"
  95. g.files = FileList["x"].resolve
  96. g.platform = Gem::Platform::RUBY
  97. end
  98. pkg = Rake::GemPackageTask.new(gem) do |p|
  99. p.package_files << "y"
  100. end
  101. assert_equal ["x", "y"], pkg.package_files
  102. assert_equal "pkgr-1.2.3.gem", pkg.gem_file
  103. end
  104. end
  105. end