Skip to content

Commit 88c5a41

Browse files
committed
Test rake build
This task was previously failing because the command `bundle exec heroics-generate` did not load `platform_api.rb` and so it fails when a constant is referenced. This commit adds a spec to make sure this behavior doesn't fail.
1 parent e492ccf commit 88c5a41

4 files changed

Lines changed: 23 additions & 4 deletions

File tree

config/client-config.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
require 'heroics'
33
require 'rate_throttle_client'
44

5-
require File.join(File.expand_path('../..', __FILE__), 'lib', 'platform-api', 'version.rb')
5+
require File.join(File.expand_path('../..', __FILE__), 'lib', 'platform-api')
66

77
Heroics.default_configuration do |config|
88
config.base_url = 'https://api.heroku.com'

lib/platform-api/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module PlatformAPI
2-
VERSION = '2.3.0'
2+
VERSION = '2.3.0.pre.1'
33
end

platform-api.gemspec

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ Gem::Specification.new do |spec|
1515
spec.homepage = 'https://github.com/heroku/platform-api'
1616
spec.license = 'MIT'
1717

18-
spec.files = `git ls-files`.split($/)
19-
spec.test_files = spec.files.grep('^(test|spec|features)/')
18+
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
19+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20+
end
2021
spec.require_paths = ['lib']
2122

2223
spec.add_development_dependency 'bundler'
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
describe 'Generating a client' do
2+
it "works" do
3+
base_dir = Pathname.new(__dir__).join("../..")
4+
Dir.mktmpdir do |tmpdir|
5+
FileUtils.copy_entry(base_dir, tmpdir)
6+
Dir.chdir(tmpdir) do
7+
schema_mtime = File.mtime("schema.json")
8+
client_rb_mtime = File.mtime("lib/platform-api/client.rb")
9+
10+
out = `rake build 2>&1`
11+
raise "Expected `rake build` to succeed but it did not:\n#{out}" unless $?.success?
12+
13+
expect(schema_mtime).to_not eq(File.mtime("schema.json"))
14+
expect(client_rb_mtime).to_not eq(File.mtime("lib/platform-api/client.rb"))
15+
end
16+
end
17+
end
18+
end

0 commit comments

Comments
 (0)