Commit graph

31 commits

Author SHA1 Message Date
mo8it
445441ce25 Make gen-dev-cargo-toml a separate package
so that `cargo install` only installs `rustlings`
2024-04-04 23:16:57 +02:00
mo8it
b6c434c445 Remove optional version field 2024-04-04 15:45:53 +02:00
mo8it
14f3585816 Make cargo run work 2024-04-01 02:11:52 +02:00
mo8it
7090fffeae Fix tests 2024-03-31 18:59:01 +02:00
mo8it
79ca821e26 Fix tests 2024-03-30 20:48:30 +01:00
mo8it
362318a6e0 Adapt tests 2023-09-04 13:30:49 +02:00
mo8it
571bab20c1 Run clippy --fix 2023-08-26 23:07:20 +02:00
magnusrodseth
0aff5340b5 test: Add integration tests 2022-08-17 16:43:48 +02:00
Greg Leonard
e9f5c9423c fix(run): correct "PAS" in integration_tests.rs 2022-07-21 23:13:22 +01:00
mokou
0b7f3fe37a test: skip mod.rs files when checking for annotations 2022-04-14 11:19:54 +02:00
mokou
6177b6e126 chore: Fix integration tests 2021-04-21 14:47:53 +02:00
apogeeoak
2e84f34cf3 chore: Updated source to follow clippy suggestions. 2021-02-09 18:21:18 -05:00
Abdou Seck
8bbe4ff138 feat(cli): Improve the list command with options, and then some
1.
`rustlings list` should now display more than just the exercise names.
Information such as file paths and exercises statuses should be displayed.
The `--paths` option limits the displayed fields to only the path names; while the `--names`
option limits the displayed fields to only exercise names.
You can also control which exercises are displayed, by using the `--filter` option, or
the `--solved` or `--unsolved` flags.

Some use cases:
- Fetching pending exercise files with the keyword "conversion" to pass to my editor:
```sh
vim $(rustlings list --filter "conversion" --paths --unsolved)
```

- Fetching exercise names with keyword "conversion" to pass to `rustlings run`:
```sh
for exercise in $(rustlings list --filter "conversion" --names)
do
    rustlings run ${exercise}
done
```

2.
This should also fix #465, and will likely fix #585, as well.
That bug mentioned in those issues has to do with the way the `watch` command handler fetches the pending exercises.
Going forward, the least recently updated exercises along with all the other exercises in a pending state are fetched.
2021-01-08 13:21:00 -05:00
Étienne Barrié
81f8c2f83c chore: Run cargo fmt 2020-08-10 10:42:54 -04:00
Abdou Seck
8ad5f9bf53 feat: Add a --nocapture option to display test harnesses' outputs
This new feature can be accessed by invoking rustlings with --nocapture.

Both unit and integration tests added.

closes #262

BREAKING CHANGES:
The following function take a new boolean argument:
	* `run`
	* `verify`
	* `test`
	* `compile_and_test`
2020-06-04 11:18:26 -04:00
Roberto Vidal
3b6d5c3aaa feature: makes "compile" exercise print output, resolves #270
When running "compile"-mode exercises in interactive `verify` mode,
we print their output when we prompt the learner if they want to
continue. This improves the "experimentation" experience, since
trying different things does produce a visible change.
2020-04-06 16:17:14 +02:00
Roberto Vidal
4b26546589 fix(run): makes run never prompt
`watch` and `verify` do prompt the user to actively move to the
next exercise. This change fixes `run` to never prompt. Previously
it was inconsistent between "test" and "compile" exercises.

BREAKING CHANGE: we again change the behavior of the `run` command
2019-11-12 11:35:40 +01:00
marisa
48c35bcfbc fix tests 2019-11-11 17:28:19 +01:00
marisa
ec2d4bd3ee
Merge branch 'master' into refactor-hints 2019-11-11 17:21:06 +01:00
marisa
ce9fa6ebbf feat(hint): Add test for hint 2019-11-11 17:19:50 +01:00
marisa
9bdb0a12e4 feat: Refactor hint system
Hints are now accessible using the CLI subcommand `rustlings hint
<exercise name`.

BREAKING CHANGE: This fundamentally changes the way people interact with exercises.
2019-11-11 16:51:38 +01:00
Roberto Vidal
2cdd61294f feat: improve watch execution mode
The `watch` command now requires user action to move to the next
exercise.

BREAKING CHANGE: this changes the behavior of `watch`.
2019-11-11 16:23:35 +01:00
marisa
627cdc07d0 feat: Index exercises by name
BREAKING CHANGE: This changes the way you use `rustlings run` by now
requiring an abridged form of the previous filename, e.g:

`rustlings run exercises/if/if1.rs` becomes
`rustlings run if1`
2019-11-11 15:46:32 +01:00
Denys Smirnov
7cf0d5d15e Add not passing integration test 2019-05-09 20:17:38 +03:00
Chris Pearce
3d11d7685b Modify integration tests to fail on panic 2019-04-07 20:13:04 +01:00
lyn
6a27ba735c cargo fmt 2019-03-20 21:25:45 +01:00
lyn
f43cb124f6 add tests 2019-03-20 21:05:45 +01:00
olivia
5e89d1e888 move old files to a separate directory 2018-04-26 21:29:11 +02:00
Robert Lugg
7d7a48b17d Added filename to top of .rs files 2018-02-21 22:09:53 -08:00
laboon
6e71d20086 Add directions on running tests 2016-05-12 19:59:44 -04:00
Carol (Nichols || Goulding)
2a23eaced6 Add some exercises about tests! 2015-09-20 18:31:41 -04:00