[RFC] tests: make read_text() work with directories#4155
Merged
Conversation
Contributor
Author
|
@Suor what do you think, is this following your philosophy as TmpDir creator? 🙂 |
This PR is just a showcase to see how we like it. I've converted a few
tests to it, but there will be much more to come.
```
assert (tmp_dir / "file") == "contents"
assert (tmp_dir / "dir").read_text() == {"subdir": {"file": "hello"}}
```
This approach is nicer because it allows us to use a declaratory
asserts instead of relying on fs files. The problem becomes much more
apparent once you get into remote workspaces, where we `trees_equal`
doesn't work.
efiop
pushed a commit
to efiop/dvc
that referenced
this pull request
Jul 2, 2020
Fixes treeverse#4150 Depends on treeverse#4155
pared
approved these changes
Jul 3, 2020
Contributor
pared
left a comment
There was a problem hiding this comment.
This is great idea, in my opinion.
efiop
added a commit
that referenced
this pull request
Jul 3, 2020
* [RFC] tests: make read_text() work with directories
This PR is just a showcase to see how we like it. I've converted a few
tests to it, but there will be much more to come.
```
assert (tmp_dir / "file") == "contents"
assert (tmp_dir / "dir").read_text() == {"subdir": {"file": "hello"}}
```
This approach is nicer because it allows us to use a declaratory
asserts instead of relying on fs files. The problem becomes much more
apparent once you get into remote workspaces, where we `trees_equal`
doesn't work.
* status: pass tree as a kwarg
Fixes #4150
Depends on #4155
Contributor
|
I looked at how you: assert (tmp_dir / "file") == "contents"and assumed you overloaded Overall, I thought about that for a while, simply never needed that. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR is just a showcase to see how we like it. I've converted a few
tests to it, but there will be much more to come.
This approach is nicer because it is basically the same as what we feed
to
TmpDir.genand also allows us to use a declaratory asserts insteadof relying on fs files. The problem becomes much more apparent once
you get into remote workspaces, where we
trees_equaldoesn't work.❗ I have followed the Contributing to DVC checklist.
📖 If this PR requires documentation updates, I have created a separate PR (or issue, at least) in dvc.org and linked it here.
❌ I will check DeepSource, CodeClimate, and other sanity checks below. (We consider them recommendatory and don't expect everything to be addressed. Please fix things that actually improve code or fix bugs.)
Thank you for the contribution - we'll try to review it as soon as possible. 🙏