Skip to content

Commit 75a060e

Browse files
FileAssociationsTest: use CannedFormattedString
1 parent c7f3480 commit 75a060e

File tree

1 file changed

+20
-23
lines changed

1 file changed

+20
-23
lines changed

test/jdk/tools/jpackage/share/FileAssociationsTest.java

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@
2323

2424
import java.nio.file.Path;
2525
import java.util.Map;
26-
2726
import jdk.jpackage.test.Annotations.Parameter;
2827
import jdk.jpackage.test.Annotations.Test;
2928
import jdk.jpackage.test.FileAssociations;
29+
import jdk.jpackage.test.JPackageCommand;
30+
import jdk.jpackage.test.JPackageStringBundle;
3031
import jdk.jpackage.test.PackageTest;
3132
import jdk.jpackage.test.PackageType;
3233
import jdk.jpackage.test.TKit;
@@ -111,46 +112,42 @@ public static void test(boolean includeDescription) {
111112
public static void testNoMime() {
112113
final Path propFile = TKit.workDir().resolve("fa.properties");
113114

114-
PackageTest packageTest = new PackageTest().excludeTypes(PackageType.MAC);
115-
116-
packageTest.configureHelloApp().addRunOnceInitializer(() -> {
115+
initPackageTest().addRunOnceInitializer(() -> {
117116
TKit.createPropertiesFile(propFile, Map.of(
118117
"extension", "foo",
119118
"description", "bar"
120119
));
121120
}).addInitializer(cmd -> {
122-
cmd.addArguments("--file-associations", propFile).saveConsoleOutput(true);
123-
}).setExpectedExitCode(1).addBundleVerifier((cmd, result) -> {
124-
TKit.assertTextStream(
125-
"No MIME types were specified for File Association number 1")
126-
.apply(result.getOutput().stream());
127-
TKit.assertTextStream(
128-
"Advice to fix: Specify MIME type for File Association number 1")
129-
.apply(result.getOutput().stream());
121+
cmd.addArguments("--file-associations", propFile);
122+
cmd.validateOutput(
123+
JPackageStringBundle.MAIN.cannedFormattedString("error.no-content-types-for-file-association", 1),
124+
JPackageStringBundle.MAIN.cannedFormattedString("error.no-content-types-for-file-association.advice", 1));
130125
}).run();
131126
}
132127

133128
@Test
134129
public static void testTooManyMimes() {
135130
final Path propFile = TKit.workDir().resolve("fa.properties");
136131

137-
PackageTest packageTest = new PackageTest().excludeTypes(PackageType.MAC);
138-
139-
packageTest.configureHelloApp().addRunOnceInitializer(() -> {
132+
initPackageTest().addRunOnceInitializer(() -> {
140133
TKit.createPropertiesFile(propFile, Map.of(
141134
"mime-type", "application/x-jpackage-foo, application/x-jpackage-bar",
142135
"extension", "foo",
143136
"description", "bar"
144137
));
145138
}).addInitializer(cmd -> {
146-
cmd.addArguments("--file-associations", propFile).saveConsoleOutput(true);
147-
}).setExpectedExitCode(1).addBundleVerifier((cmd, result) -> {
148-
TKit.assertTextStream(
149-
"More than one MIME types was specified for File Association number 1")
150-
.apply(result.getOutput().stream());
151-
TKit.assertTextStream(
152-
"Advice to fix: Specify only one MIME type for File Association number 1")
153-
.apply(result.getOutput().stream());
139+
cmd.addArguments("--file-associations", propFile);
140+
cmd.validateOutput(
141+
JPackageStringBundle.MAIN.cannedFormattedString("error.too-many-content-types-for-file-association", 1),
142+
JPackageStringBundle.MAIN.cannedFormattedString("error.too-many-content-types-for-file-association.advice", 1));
154143
}).run();
155144
}
145+
146+
private static PackageTest initPackageTest() {
147+
return new PackageTest()
148+
.excludeTypes(PackageType.MAC)
149+
.configureHelloApp()
150+
.addInitializer(JPackageCommand::setFakeRuntime)
151+
.setExpectedExitCode(1);
152+
}
156153
}

0 commit comments

Comments
 (0)