Skip to content

ScalaTest + Scalactic 3.0 upgrade #269

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
SethTisue opened this issue Aug 31, 2016 · 5 comments
Closed

ScalaTest + Scalactic 3.0 upgrade #269

SethTisue opened this issue Aug 31, 2016 · 5 comments
Assignees

Comments

@SethTisue
Copy link
Member

already mentioned on scala/scala-dev#203

@SethTisue SethTisue self-assigned this Aug 31, 2016
@SethTisue SethTisue changed the title Scalatest + Scalactic 3.0 upgrade ScalaTest + Scalactic 3.0 upgrade Aug 31, 2016
@SethTisue
Copy link
Member Author

SethTisue commented Sep 1, 2016

yuck, the 3.0.x branch won't even extract; dbuild finds a cycle in its subproject graph

hypothesis: could be because dbuild isn't taking % "test" into account. (ScalaTest depends on Scalactic; and Scalactic itself has tests that use ScalaTest; but it isn't a cycle as long as the non-test projects are built before the test ones.) I don't have any hard evidence for this, it's just a hunch. the cycles in the subproject graph dbuild dumps out seem to go through test projects

hmm, or, poring over their (lengthy!) build, the way aggregate was used seemed suspicious to me. maybe SethTisue/scalatest@f620c11 will fix it? not sure what the aggregate calls are intended to accomplish, but perhaps they're introducing a dependency of non-test on test stuff, causing the cycle

@SethTisue
Copy link
Member Author

SethTisue commented Sep 1, 2016

taking the aggregate calls out makes extraction succeed:

[scalatest] [warn] Originally requested: scalatest, scalactic
[scalatest] [warn] Now added: scalacticMacro

but https://scala-ci.typesafe.com/job/scala-2.12.x-integrate-community-build/516/console shows:

[scalatest] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalatest-e9bb9cf9971cb2b4809e4a367dbcf6bd3471ee38/scalatest/target/docsrc/src/main/scala/org/scalatest/selenium/WebBrowser.scala:4610: recursive value firefoxProfile needs type
[scalatest] [error]   implicit val webDriver = new FirefoxDriver(firefoxProfile)
[scalatest] [error]                                              ^
[scalatest] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalatest-e9bb9cf9971cb2b4809e4a367dbcf6bd3471ee38/scalatest/target/docsrc/src/main/scala/org/scalatest/selenium/WebBrowser.scala:4616: could not find implicit value for parameter driver: org.openqa.selenium.WebDriver
[scalatest] [error]     capture to directory
[scalatest] [error]             ^

looks fixable, but I think I should set this aside until after 2.12.0-RC1 is out the door

oh wait, it's fixed in Adriaan's fork, adriaanm/scalatest@3668daf

@SethTisue
Copy link
Member Author

ok that worked, just for ScalaTest & Scalactic, so here's a full run, surely the upgrade will break things... https://scala-ci.typesafe.com/job/scala-2.12.x-integrate-community-build/518/consoleFull

@SethTisue
Copy link
Member Author

oh and hey, pleasant surprise, this came really close to passing, just one failure in scalamock:

[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:31: not found: type NoArgTest
[scalamock] [error]   abstract override def withFixture(test: NoArgTest): Outcome = {
[scalamock] [error]                                           ^
[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:31: not found: type NoArgTest
[scalamock] [error]   abstract override def withFixture(test: NoArgTest): Outcome = {
[scalamock] [error]                                           ^
[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:35: value withFixture is not a member of org.scalatest.SuiteMixin with org.scalamock.MockFactoryBase
[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:35: value withFixture is not a member of org.scalatest.SuiteMixin with org.scalamock.MockFactoryBase
[scalamock] [error]         val outcome = super.withFixture(test)
[scalamock] [error]         val outcome = super.withFixture(test)
[scalamock] [error]                             ^
[scalamock] [error]                             ^
[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:46: value withFixture is not a member of org.scalatest.SuiteMixin with org.scalamock.MockFactoryBase
[scalamock] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.5/project-builds/scalamock-8d8139cab9145d0a38d9f141f750f03c3fbcbd0a/frameworks/scalatest/src/main/scala/org/scalamock/scalatest/AbstractMockFactory.scala:46: value withFixture is not a member of org.scalatest.SuiteMixin with org.scalamock.MockFactoryBase
[scalamock] [error]       super.withFixture(test)
[scalamock] [error]       super.withFixture(test)
[scalamock] [error]             ^
[scalamock] [error]             ^
[scalamock] [error] three errors found

@SethTisue
Copy link
Member Author

fixed by #271

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant