This commit is contained in:
josh committed 2022-02-19 22:27:43 -05:00
1 parent 19dee2b2a5
commit e952dcbffc
7 files changed
+175 -25

No files matched your search

+57 -3
View File
@@ -3100,10 +3100,64 @@ EOF
expect(result.status).to_not eq 0
end
it "raises an error when with_variants is called with an empty variant group" do
it "allows specifying the exact enabled variants on the command line 1" do
test_dir "variants"
result = run_rscons(args: %w[-f error_with_variants_with_empty_variant_group.rb])
expect(result.stderr).to match %r{Error: empty variant group found}
result = run_rscons(args: %w[-v -f multiple_groups.rb -e kde,debug])
expect(result.stderr).to eq ""
expect(result.status).to eq 0
expect(File.exist?("build/prog-kde-debug/prog.exe")).to be_truthy
expect(File.exist?("build/prog-kde-release/prog.exe")).to be_falsey
expect(File.exist?("build/prog-gnome-debug/prog.exe")).to be_falsey
expect(File.exist?("build/prog-gnome-release/prog.exe")).to be_falsey
end
it "allows specifying the exact enabled variants on the command line 2" do
test_dir "variants"
result = run_rscons(args: %w[-v -f multiple_groups.rb -e kde,gnome,release])
expect(result.stderr).to eq ""
expect(result.status).to eq 0
expect(File.exist?("build/prog-kde-debug/prog.exe")).to be_falsey
expect(File.exist?("build/prog-kde-release/prog.exe")).to be_truthy
expect(File.exist?("build/prog-gnome-debug/prog.exe")).to be_falsey
expect(File.exist?("build/prog-gnome-release/prog.exe")).to be_truthy
end
it "allows disabling a single variant on the command line" do
test_dir "variants"
result = run_rscons(args: %w[-v -f multiple_groups.rb --variants=-kde])
expect(result.stderr).to eq ""
expect(result.status).to eq 0
expect(File.exist?("build/prog-kde-debug/prog.exe")).to be_falsey
expect(File.exist?("build/prog-kde-release/prog.exe")).to be_falsey
expect(File.exist?("build/prog-gnome-debug/prog.exe")).to be_truthy
expect(File.exist?("build/prog-gnome-release/prog.exe")).to be_truthy
end
it "allows turning off variants by default" do
test_dir "variants"
result = run_rscons(args: %w[-v -f default.rb])
expect(File.exist?("build/prog-debug/prog.exe")).to be_falsey
expect(File.exist?("build/prog-release/prog.exe")).to be_truthy
end
it "allows turning on an off-by-default-variant from the command line" do
test_dir "variants"
result = run_rscons(args: %w[-v -f default.rb -e +debug])
expect(File.exist?("build/prog-debug/prog.exe")).to be_truthy
expect(File.exist?("build/prog-release/prog.exe")).to be_truthy
end
it "allows only turning on an off-by-default-variant from the command line" do
test_dir "variants"
result = run_rscons(args: %w[-v -f default.rb -e debug])
expect(File.exist?("build/prog-debug/prog.exe")).to be_truthy
expect(File.exist?("build/prog-release/prog.exe")).to be_falsey
end
it "exits with an error if no variant in a variant group is activated" do
test_dir "variants"
result = run_rscons(args: %w[-v -f multiple_groups.rb --variants=kde])
expect(result.stderr).to match %r{No variants enabled for variant group}
expect(result.status).to_not eq 0
end
end