Skip to content
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

equalz Scalatest matcher in new scalatest-utils library #1200

Merged
merged 23 commits into from
May 27, 2020

Conversation

S11001001
Copy link
Contributor

@S11001001 S11001001 commented May 16, 2019

A shot at a type-safe extension for equality checking in Scalatest without the escape hatches afforded by the alternatives, including ===.

Open questions:

  • (Outcome: 2nd option) should we keep the scalatest-tools library as is, move data-independent elements like FlatSpecCheckLaws to this library, or put Equalz in data-scalacheck? (NB: Equalz does not depend on scalacheck.)
  • (Outcome: no) The use of intersection to improve on the built-in MatcherFactory1 design while maintaining some compatibility with it is quite tricky; can we improve further by splitting the typeclass resolution?

Pull Request Checklist

NOTE: CI is not automatically run on non-members pull-requests for security
reasons. The reviewer will have to comment with /AzurePipelines run to
trigger the build.

@S11001001 S11001001 requested a review from leo-da May 16, 2019 15:55
@S11001001 S11001001 self-assigned this May 16, 2019
Copy link
Contributor

@leo-da leo-da left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@leo-da
Copy link
Contributor

leo-da commented May 27, 2020

should we keep the scalatest-tools library as is, move data-independent elements like FlatSpecCheckLaws to this library, or put Equalz in data-scalacheck? (NB: Equalz does not depend on scalacheck.)

I think FlatSpecCheckLaws and Equalz should be in scalatest-tools... daml-lf/data-scalacheck should be a separate module, it depends on daml-lf/data. There are a lot of usecases when I would like to use FlatSpecCheckLaws and Equalz without any daml-lf context, without daml-lf/data dependency.

Maybe even move stalatest-tools into libs-scala.

@S11001001 S11001001 marked this pull request as ready for review May 27, 2020 19:51
@S11001001 S11001001 requested a review from a user May 27, 2020 19:51
S11001001 added 2 commits May 27, 2020 15:53
CHANGELOG_BEGIN
CHANGELOG_END
@S11001001
Copy link
Contributor Author

I think FlatSpecCheckLaws and Equalz should be in scalatest-tools

Maybe even move stalatest-tools into libs-scala.

@leo-da All implemented.

@S11001001 S11001001 merged commit 1be6b36 into master May 27, 2020
@S11001001 S11001001 deleted the equalz-matcher branch May 27, 2020 21:25
@S11001001 S11001001 changed the title equalz Scalatest matcher in new daml-lf/scalatest-tools library equalz Scalatest matcher in new scalatest-utils library May 27, 2020
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

Successfully merging this pull request may close these issues.

2 participants