ciscoo / cxf-codegen-gradle

Gradle plugin to generate Java artifacts from WSDL
Apache License 2.0
26 stars 6 forks source link

Use Java NIO consistently #74

Closed ciscoo closed 1 year ago

ciscoo commented 1 year ago

On certain OS', like macOS, paths differ. For example, /var is a symlink to /private/var:

$ ls -l /var
lrwxr-xr-x@ 1 root  wheel  11 Feb  9 03:39 /var -> private/var

This can lead to tests failing with the following:

GeneratingJavaScriptFunctionalTests > toolOptions(GradleBuild) > docs.GeneratingJavaScriptFunctionalTests.toolOptions(GradleBuild)[1] FAILED
    java.lang.AssertionError: 
    Expecting actual:
      "
    > Task :verify
    wsdl=/private/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example.wsdl
    outputDir=/private/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/build/example-generated-js
    catalog=/private/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example-catalog.xml
    packagePrefixes=[UriPrefixPair[uri='https://example.com', prefix='example']]
    verbose=true

    BUILD SUCCESSFUL in 56ms
    1 actionable task: 1 executed
    "
    to contain:
      ["wsdl=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example.wsdl",
        "outputDir=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/build/example-generated-js",
        "catalog=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example-catalog.xml",
        "packagePrefixes=[UriPrefixPair[uri='https://example.com', prefix='example']]",
        "verbose=true"]
    but could not find:
      ["wsdl=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example.wsdl",
        "outputDir=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/build/example-generated-js",
        "catalog=/var/folders/zd/ysgd2r2j6vv1kcyccpsw9mbc0000gn/T/gradle-4927308695545440536/path/to/example-catalog.xml"]

As of https://github.com/ciscoo/cxf-codegen-gradle/issues/59, most tests use Path from Java NIO, the code itself still uses File.