group id: org.scalatest
artifact id: scalatest
Here is a list of changes in the 1.3 release, taken from the release notes:
Improved the sbt support provided by ScalaTestFramework by allowing the formatted
output generated by specification-style traits like Spec or WordSpec to be seen by the
user when running through sbt. Also enable color output.
Fixed a bug when running suites concurrently that usually manifested itself as an eventual out of memory error. The
problem was the executor service being used wasn't being shutdown after each use. So if repeated runs were done in the same JVM,
eventually too meany threads would pile up.
Added a SeveredStackTraces stack traces trait that violently chops off test-related stack traces just above the
offending line of test code. Although ScalaTest's exception types provide sufficient information to do this when presenting a
stack trace to the user, some tools (such as IDEs that run ScalaTest via JUnit) don't use this information yet and therefore show
the full stack trace. SeveredStackTraces can be helpful until such tools provide better support for
Updated the version of EasyMock to EasyMock 3.0. Unfortuately, EasyMock 3.0 breaks compatibility with previous versions of EasyMock by
moving very important types to new packages. So if you're using EasyMock with ScalaTest, you'll need to upgrade to EasyMock 3.0 to use
Updated the version of ScalaCheck to 1.8. If you're using ScalaTest with ScalaCheck, you'll likely need to upgrade to ScalaCheck 1.8 to use
Added documentation explaining that because Conductor uses the result of calling thread.getState for control flow,
occasionally Conductor can produce incorrect results.
Now only use as tags on Suite annotations that are themselves annotated with org.scalatest.TagAnnotation. This
is a breaking change that was marked as deprecated since 1.0, and the deprecation cycle has ended.
Added withClue to Assertions to provide a way to supply extra information in an exception thrown by intercept
or a ScalaTest matcher expression.
Made assert(a1 === a2) compare arrays structurally. In matcher expressions, the === operator means equality in terms
of invoking ==, except for arrays, for which == checks that the two arrays are the same instance. For arrays, ScalaTest
matchers passes the two arrays to java.util.Arrays.deepEquals. Now === has the same behavior for arrays when used in
an assertion. As a result, the === operator now always compares arrays structurally no matter how it is used in ScalaTest. Note, this
change would break any code that was intentionally using === to ensure two arrays are the same instance in an assert. It is
likely no one was actually doing that, but if so, this will show up as a failed test and that code will need to be
changed to assert(a1 eq a2). (Sorry, there was no way to deprecate a particular use of ===.)
Fixed a bug: the pretty printer for arrays wasn't handling null values in arrays correctly, and now does.