This repository was archived by the owner on Nov 9, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 15
Conversation
This file contains 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
This seems reasonable to me! I ended up seeing #39 first and left one tangential comment there which is probably also equally applicable to this, but both seem fine to land now. |
Looks good! |
kubkon
added a commit
that referenced
this pull request
Nov 6, 2019
* Add test case for `poll_oneoff` syscall This commit adds a test case for `poll_oneoff` syscall. In particular, it builds on the excellent test use case provided by @dunnock in their repo [poll_oneoff_tests] (thanks!), and tests: * simple timeout * stdin read with timeout * fd read and fd write polls [poll_oneoff_tests]: https://github.com/dunnock/poll_oneoff_tests * Apply suggestions and negative test for bad fd Co-authored-by: Maxim Vorobjov <maxim.vorobjov@gmail.com> * Add smoke test for STDOUT/ERR readwrite poll * Add comment on stdin/out/err
kubkon
added a commit
that referenced
this pull request
Nov 7, 2019
* Initial checkin. * Update to rust-lang libc. * Add a .gitignore file. * Factor out functions for cleaning up files and directories. * Fix a typo in a comment. * Print a "Success!" message if all tests passed. * Factor out code for creating directories. * Add wrappers around WASI functions. These wrappers handle converting from &str to pointer+length and handle unsafe. * More refactoring. * Refactor a fd_close helper. * Move utility functions into a separate file. * cargo update * Add a basic test for random_get. * Test that directories aren't resizable. * Test clearing __WASI_RIGHT_PATH_FILESTAT_SET_SIZE. Ensure that clearing __WASI_RIGHT_PATH_FILESTAT_SET_SIZE succeeds before testing file truncation. * cargo update * Modularise tests for easier use with wasi-common crate * Add a Code of Conduct and CONTRIBUTING.md. * Fix typo * Add testcase for fd_allocate * Add positive test for fd_renumber * Assert bufused in readlink_no_buffer testcase * Add positive readlink testcase * Add testcase for fd_seek and fd_tell * Add fd_p{read, write} test * Add README * Add cases with trailing slashes to interesting_paths * Split nofollow_errors testcase into two * nofollow_errors now operators on symlinks to existing resources * dangling_symlink covers danling symlinks tests * Factor out a `create_file` helper function. * Switch from the error crate to `std::io::Error::last_os_error()`. * Use `create_file` in the readlink test too. * Add a test for fd_filestat_set_* * Minor refactoring Add missing cleanup_file calls to file_pread_pwrite and file_seek_tell. * Add testcase for unbuffered fd_write; fixes #11 * Add testcase for path_rename * Use the wasi crate. Switch from depending on libc to depending on the new wasi crate to provide the low-level WASI interfaces. See also rust-lang/libc#1461. * Add a test for path_filestat_* * Add a test for fd_readdir * Use expect instead of unwrap * Add a check for ino. * Fix the build * Don't assume a specific order of dirents * Better test * Test cookie value * Fix file types * Fix the test * Fix the test * Fix the test * Cleanup * Minor formatting tidying in README.md. * Fix miscellaneous clippy warnings. * Rename the crate to wasi-misc-tests. * Update to wasi 0.7.0. This switches from using the libc wasi bindings to using the wasi crate's bindings. This eliminates a git dependency on libc, updates to the new-style bindings which use Result where possible, and treats functions that operate on raw file descriptors as unsafe. * Add various tests for trailing-slash behavior. * Sync new testcases with latest upstream * Fix path_filestat testcase * Add smoke test for fd_advise This test is a true smoke test as it only tests whether issuing an advise call to the host's kernel doesn't yield an error. The consequence of issuing such a syscall is not tested. * Check if CLOCK_MONOTONIC is actually monotonic * Refactor the inequality assertions for more debuggable errors. * Bump libc from 0.2.62 to 0.2.65 Bumps [libc](https://github.com/rust-lang/libc) from 0.2.62 to 0.2.65. - [Release notes](https://github.com/rust-lang/libc/releases) - [Commits](rust-lang/libc@0.2.62...0.2.65) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> * Fix compilation error * Enable Actions and add rust.yml (#35) * Enable Actions and add rust.yml This commit enables Github Actions and adds corresponding configuration in rust.yml file. * Update rust.yml * Fix formatting * Add empty .rustfmt.toml config file * Add badge to README * Update README * Clean up Github Actions and README * Add test case for `poll_oneoff` syscall (#38) * Add test case for `poll_oneoff` syscall This commit adds a test case for `poll_oneoff` syscall. In particular, it builds on the excellent test use case provided by @dunnock in their repo [poll_oneoff_tests] (thanks!), and tests: * simple timeout * stdin read with timeout * fd read and fd write polls [poll_oneoff_tests]: https://github.com/dunnock/poll_oneoff_tests * Apply suggestions and negative test for bad fd Co-authored-by: Maxim Vorobjov <maxim.vorobjov@gmail.com> * Add smoke test for STDOUT/ERR readwrite poll * Add comment on stdin/out/err * Add a test for `*at`-style functions returning `ENOTDIR` when `dirfd` is not a dir. * Remove misc_testsuite submodule * Add "publish=false" to Cargo.toml; remove LICENSE
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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 does further refactoring of the hostcalls. In particular, it
Result<T> = Result<T, host::__wasi_errno_t>
&FdEntry
for&File
wherever possibleAs a by-product of the second bulletpoint,
fd_renumber
is now platform independent. I've also added a positive testcase forfd_renumber
to verify that it indeed is correct.EDIT:
NB while this PR builds on #37, it is not a prerequisite for it, and should we decide to go with pure&str
andString
instead ofWasiPath
andWasiPathBuf
wrapper types as per our discussion in #37, I'll make all the necessary rebasing work, so don't let this sway you when going over this PR :-)