Commit 71ce9d47 authored by Samuel E. Giddins's avatar Samuel E. Giddins

Merge pull request #4684 from CocoaPods/seg-update-clintegracon

Update CLIntegracon
parents 932549bb 57f33651
......@@ -126,7 +126,7 @@ GEM
parser (~> 2.2)
awesome_print (1.6.1)
bacon (1.2.0)
clintegracon (0.6.1)
clintegracon (0.8.1)
colored (~> 1.2)
diffy
cocoapods-dependencies (0.5.1)
......@@ -135,7 +135,7 @@ GEM
colored (1.2)
crack (0.4.2)
safe_yaml (~> 1.0.0)
diffy (3.0.7)
diffy (3.1.0)
escape (0.0.4)
ffi (1.9.6)
fuzzy_match (2.0.4)
......
......@@ -201,27 +201,20 @@ begin
exit 1
end
title 'Running Integration tests'
sh 'rm -rf spec/cocoapods-integration-specs/tmp'
rm_rf 'tmp'
title 'Building all the fixtures'
sh('bundle exec bacon spec/integration.rb') {}
title 'Storing fixtures'
# Copy the files to the files produced by the specs to the after folders
FileList['tmp/*'].each do |source|
destination = "spec/cocoapods-integration-specs/#{source.gsub('tmp/', '')}/after"
FileList['tmp/*/transformed'].each do |source|
name = source.match(%r{^tmp/(.+)/transformed$})[1]
destination = "spec/cocoapods-integration-specs/#{name}/after"
if File.exist?(destination)
sh "rm -rf #{destination}"
sh "mv #{source} #{destination}"
rm_rf destination
mv source, destination
end
end
# Remove files not used for the comparison
# To keep the git diff clean
files_to_delete = FileList['spec/cocoapods-integration-specs/*/after/{Podfile,*.podspec,**/*.xcodeproj,PodTest-hg-source}', '.DS_Store']
files_to_delete.exclude('/spec/cocoapods-integration-specs/init_single_platform/**/*.*')
files_to_delete.each do |file_to_delete|
sh "rm -rf #{file_to_delete}"
end
puts
puts 'Integration fixtures updated, commit and push in the `spec/cocoapods-integration-specs` submodule'
end
......
Subproject commit 1992448c8291e0c0ee871e4273c81c6272f18c0d
Subproject commit b464161555947e7992606e0b186c1e8078d36f7f
......@@ -66,28 +66,26 @@ CLIntegracon.configure do |c|
# Creates a YAML representation of the Xcodeproj files
# which should be used as a reference for comparison.
xcodeproj = Xcodeproj::Project.open(path)
File.open("#{path}.yaml", 'w') do |file|
file.write xcodeproj.to_yaml
end
yaml = xcodeproj.to_yaml
path.rmtree
path.open('w') { |f| f << yaml }
end
c.transform_produced '**/*.framework' do |path|
tree = FileTree.to_tree(path)
FileUtils.rm_rf path
File.open(path, 'w') { |f| f << tree }
path.rmtree
path.open('w') { |f| f << tree }
end
# Register special handling for YAML files
paths = [/Podfile\.lock/, /Manifest\.lock$/, /xcodeproj\.yaml$/]
c.has_special_handling_for(*paths) do |path|
c.transform_produced '**/{Podfile,Manifest}.lock' do |path|
# Remove CocoaPods version
yaml = File.open(path) { |f| YAML.load(f) }
yaml = YAML.load(path.read)
yaml.delete('COCOAPODS')
YAML.dump(yaml)
path.open('w') { |f| f << YAML.dump(yaml) }
end
# So we don't need to compare them directly
c.ignores /\.xcodeproj\//
c.ignores 'Podfile'
# Ignore certain OSX files
......@@ -98,7 +96,7 @@ CLIntegracon.configure do |c|
# Needed for some test cases
c.ignores '*.podspec'
c.ignores 'PodTest-hg-source/**'
c.ignores 'PodTest-hg-source/**/*'
c.hook_into :bacon
end
......@@ -120,6 +118,7 @@ describe_cli 'pod' do
'--verbose',
'--no-ansi',
]
s.replace_path %r{#{CLIntegracon.shared_config.temp_path}/\w+/transformed}, 'PROJECT'
s.replace_path ROOT.to_s, 'ROOT'
s.replace_path `which git`.chomp, 'GIT_BIN'
s.replace_path `which hg`.chomp, 'HG_BIN' if has_mercurial
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment