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

add Path.notToBeWritable #1001

Closed
11 tasks
robstoll opened this issue Oct 7, 2021 · 2 comments · Fixed by #1004 or #1013
Closed
11 tasks

add Path.notToBeWritable #1001

robstoll opened this issue Oct 7, 2021 · 2 comments · Fixed by #1004 or #1013
Assignees
Milestone

Comments

@robstoll
Copy link
Owner

robstoll commented Oct 7, 2021

Platform (all, jvm, js): jvm
Extension (none, kotlin 1.3): none

Code related feature

expect(path).notToBeWritable()

//instead of

expect(path).feature { f(it::isWriteable) }.toEqual(false)

Following the things you need to do:

logic

  • extend PathAssertions with a function isNotWritable (see PathAssertions as a guideline)
  • implement isNotWritable in DefaultPathAssertions.kt by using the ExpectImpl.feature.extractor...
  • run ./gradlew generateLogic which will update path.kt in logic

api-fluent

  • provide a function notToBeWritable which returns Expect<T> in pathExpectations.kt (see pathExpectations.kt toBeWritable as a guideline)
  • add a sample to PathExpectationSamples and link from the api function with @sample
  • add @since 0.17.0 (adapt to current milestone) to KDOC
  • extend or write a separate Spec named PathExpectationsSpec in specs-common (see for instance PathExpectationsSpec) and extend it in atrium-api-fluent-en_GB-common/src/test

api-infix

  • provide a function notToBe writable which returns Expect<T> in pathExpectations.kt (see pathExpectations.kt toBeReadable as a guideline)
  • add a sample to PathExpectationSamples (might be you need to create this class) and link from the api function with @sample
  • add @since 0.17.0 (adapt to current milestone) to KDOC
  • extend or write a separate Spec named PathExpectationsSpec in specs-common (see for instance PathExpectationsSpec) and extend it in atrium-api-infix-en_GB-common/src/test

Your first contribution?

  • Write a comment I'll work on this if you would like to take this issue over.
    This way we get the chance to revise the description in case things have changed in the meantime, we might give you additional hints and we can assign the task to you, so that others do not start as well.
  • See Your first code contribution for guidelines.
  • Do not hesitate to ask questions here or to contact us via Atrium's slack channel if you need help
    (Invite yourself in case you do not have an account yet).
@rhushikesh
Copy link
Contributor

I'll work on this.

@rhushikesh
Copy link
Contributor

Hi @robstoll,

I have submitted PR for this issue #1004

I have tried to go through your PR comments for other similar PRs and have tried to incorporate them. Please let me know your thoughts.

I am waiting for my other PR #1003 for adding samples for api-infix to get merge so that I can update api samples for notToBeWritable over there.

Thanks,

@robstoll robstoll added this to the 0.17.0 milestone Oct 9, 2021
@robstoll robstoll linked a pull request Oct 9, 2021 that will close this issue
@robstoll robstoll linked a pull request Oct 16, 2021 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants