0

我已经下载了 Spring RESTdocs 的 1.1.0-RELEASE 标记源代码的副本,但是“gradlew build”在测试阶段失败了。502 次测试中有 273 次失败,此错误有所不同: org.springframework.restdocs.request.RequestPartsSnippetTests > requestPartsWithOptionalColumn[Markdown] FAILED java.lang.AssertionError: Expected: is adoc snippetPart | Optional | Description ---- | -------- | ----------- a | true | one b | false | two but: was:Part | Optional | Description ---- | -------- | ----------- a | true | one b | false | two

问题看起来是字符串“adoc snippet”前缀在预期输出的开头。我认为这是不对的,尽管我可以在 AbstractContentSnippetMatcher.describeTo() 中看到它为什么会发生并且看起来不是很有条件,所以也许是测试的实际结果是错误的?

我没有对源代码做任何更改*,但我没有看到其他人报告这个问题,所以我很困惑。我对 gradle 完全陌生。我需要设置某种配置以使测试通过吗?我应该使用不同的目标吗?

(好的... 1 个小改动:我从 checkStyle 中删除了文件末尾的换行检查 - 我正在从 Github 下载到 Windows PC。)

4

1 回答 1

0

问题是 zip 中的文件具有 Unix 样式的行结尾,但是在 Windows 上运行时,Checkstyle 和测试需要 Windows 样式的行结尾。

通常,Windows Git 客户端会在您签出代码时通过转换行尾来为您解决这个问题。例如, Windows 版Git的默认配置是以 Windows 样式的行结尾签出代码,但以 Windows 样式的行结尾提交更改。

您也许可以找到一个 Windows 实用程序,它将行尾从 批量转换LFCRLF. 如果做不到这一点,安装 Git 客户端(例如我上面链接到的用于 Windows 的 Git)可能是最简单的,确保它被配置为执行行结束转换,然后:

> git clone https://github.com/spring-projects/spring-restdocs
> cd spring-restdocs
> gradlew build
于 2016-07-22T16:07:23.837 回答