1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test/rubygems/test_rake_package.rb
David Rodríguez f9dac1bd54 [rubygems/rubygems] Cleanup after testing rake package
Sometimes it happens to me that my local tests start failing because I
pull some file removals or renames into my local copy, and those are
still present on my last copy of pkg/. In those cases, the test about
`rake package` will fail with something like the following:

````

Failure:
TestRakePackage#test_builds_ok [/home/deivid/Code/rubygems/test/rubygems/test_rake_package.rb:13]:
Expected `rake package` to work, but got errors:

```
cd pkg/rubygems-update-3.1.0.pre1
WARNING:  See http://guides.rubygems.org/specification-reference/ for help
rake aborted!
Gem::InvalidSpecificationException: ["test/rubygems/test_rake_package.rb"] are not files

Tasks: TOP => package => gem => pkg/rubygems-update-3.1.0.pre1.gem
(See full trace by running task with --trace)

 ```

If you have added or removed files, make sure you run `rake update_manifest` to update the `Manifest.txt` accordingly.
Expected: true
  Actual: false
````

So, make sure, package is always built from scratch.

https://github.com/rubygems/rubygems/commit/4e2cc9eb26
2019-08-05 18:45:11 +09:00

26 lines
585 B
Ruby

# frozen_string_literal: true
require "rubygems/test_case"
require "open3"
class TestRakePackage < Minitest::Test
def test_builds_ok
skip unless File.exist?(File.expand_path("../../../Rakefile", __FILE__))
output, status = Open3.capture2e("rake package")
assert_equal true, status.success?, <<~MSG.chomp
Expected `rake package` to work, but got errors:
```
#{output}
```
If you have added or removed files, make sure you run `rake update_manifest` to update the `Manifest.txt` accordingly
MSG
FileUtils.rm_f "pkg"
end
end