REFACTOR: move run-tests and fix the std assert namespace (#9303)

related to the namespace bullet point in
- https://github.com/nushell/nushell/issues/8450

# Description
this was the last module of the standard library with a broken
namespace, this PR takes care of this.

- `run-tests` has been moved to `std/mod.nu`
- `std/testing.nu` has been moved to `std/assert.nu`
- the namespace has been fixed
- `assert` is now called `main` and used in all the other `std assert`
commands
- for `std assert length` and `std assert str contains`, in order not to
shadow the built-in `length` and `str contains` commands, i've used
`alias "core ..." = ...` to (1) define `foo` in `assert.nu` and (2)
still use the builtin `foo` with `core foo` (replace `foo` by `length`
or `str contains`)
  - tests have been fixed accordingly

# User-Facing Changes
one can not use
```
use std "assert equal"
```
anymore because `assert ...` is not exported from `std`.
`std assert` is now a *real* module.

# Tests + Formatting
- 🟢 `toolkit fmt`
- 🟢 `toolkit clippy`
-  `toolkit test`
-  `toolkit test stdlib`

# After Submitting
```
$nothing
```

# Notes for reviewers
to test this, i think the easiest is to
- run `toolkit test stdlib` and see all the tests pass
- run `cargo run -- -n` and try `use std assert` => are all the commands
available in scope?
This commit is contained in:
Antoine Stevan
2023-05-27 14:45:04 +02:00
committed by GitHub
parent 34b3a49cae
commit 3005fe10e5
8 changed files with 442 additions and 448 deletions

View File

@ -1,8 +1,5 @@
use std assert
use std "assert length"
use std "assert equal"
use std "assert not equal"
use std "assert error"
use std assert
use std log
# A couple of nuances to understand when testing module that exports environment:

View File

@ -1,6 +1,5 @@
use std log
use std "assert"
use std "assert skip"
use std assert
export def setup [] {
log debug "Setup is running"

View File

@ -1,7 +1,7 @@
use std
export def test_path_add [] {
use std "assert equal"
use std assert
let path_name = if "PATH" in $env { "PATH" } else { "Path" }

View File

@ -1,7 +1,7 @@
use std xml xaccess
use std xml xupdate
use std xml xinsert
use std "assert equal"
use std assert
export def setup [] {
{sample_xml: ('