/* * Copyright (c) 2020, 2022, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions.
*/
PackageTest test = new PackageTest()
.forTypes(PackageType.WINDOWS)
.configureHelloApp()
.addInitializer(cmd -> { // 1. Set fake run time to save time by skipping jlink step of jpackage. // 2. Instruct test to save jpackage output.
cmd.setFakeRuntime().saveConsoleOutput(true);
// Set JVM default locale that is used to select primary l10n file. if (userLanguage != null) {
cmd.addArguments("-J-Duser.language=" + userLanguage);
} if (userCountry != null) {
cmd.addArguments("-J-Duser.country=" + userCountry);
}
// Cultures handling is affected by the WiX extensions used. // By default only WixUtilExtension is used, this flag // additionally enables WixUIExtension. if (enableWixUIExtension) {
cmd.addArgument("--win-dir-chooser");
}
// Preserve config dir to check the set of copied l10n files.
Path tempDir = getTempDirectory(cmd, tempRoot);
Files.createDirectories(tempDir.getParent());
cmd.addArguments("--temp", tempDir.toString());
})
.addBundleVerifier((cmd, result) -> { if (expectedCulture != null) {
TKit.assertTextStream("-cultures:" + expectedCulture).apply(
getLightCommandLine(result));
}
if (expectedErrorMessage != null) {
TKit.assertTextStream(expectedErrorMessage)
.apply(result.getOutput().stream());
}
if (wxlFileInitializers != null) { if (allWxlFilesValid) { for (var v : wxlFileInitializers) { if (!v.name.startsWith("MsiInstallerStrings_")) {
v.createCmdOutputVerifier(resourceDir).apply(
getLightCommandLine(result));
}
}
Path tempDir = getTempDirectory(cmd, tempRoot).toAbsolutePath(); for (var v : createDefaultL10nFilesLocVerifiers(tempDir)) {
v.apply(getLightCommandLine(result));
}
} else {
Stream.of(wxlFileInitializers)
.filter(Predicate.not(WixFileInitializer::isValid))
.forEach(v -> v.createCmdOutputVerifier(
resourceDir).apply(result.getOutput().stream()));
TKit.assertFalse(
getLightCommandLine(result).findAny().isPresent(), "Check light.exe was not invoked");
}
}
});
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.