-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
28ab729
commit dd0dbc5
Showing
4 changed files
with
42 additions
and
4 deletions.
There are no files selected for viewing
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 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 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# Scoping Testing | ||
|
||
Scoping tests are data-driven instead of being specified explicitly. This document explains how to add a new scoping | ||
test. | ||
|
||
## Adding a scoping test | ||
|
||
1. Create a new **folder** (not just a file!) in the `DSL/tests/resources/scoping` directory or any | ||
subdirectory. Give the folder a descriptive name, since the folder name becomes part of the test name. | ||
|
||
!!! tip "Skipping a test" | ||
|
||
If you want to skip a test, add the prefix `skip-` to the folder name. | ||
|
||
2. Add files with the extension `.sdstest` **directly inside | ||
the folder**. All files in a folder will be loaded into the same workspace, so they can | ||
reference each other. Files in different folders are loaded into different workspaces, so they cannot reference each other. | ||
3. Add the Safe-DS code that you want to test to the file. | ||
4. Surround **the name** of any declaration that you want to reference with test markers, e.g. `class »C«`. Add a | ||
comment in the preceding line with the following format (replace `<id>` with some unique identifier): | ||
```ts | ||
// $TEST$ target <id> | ||
``` | ||
5. Surround references you want to test with test markers, e.g. `»C«()`. If you want to assert that the reference should be resolved, | ||
add a comment in the preceding line with the following format (replace `<target_id>` with the identifier you previously | ||
assigned to the referenced declaration): | ||
|
||
```ts | ||
// $TEST$ references <target_id> | ||
``` | ||
If you instead want to assert that the reference is unresolved, add the following comment to the preceding line: | ||
```ts | ||
// $TEST$ unresolved | ||
``` | ||
6. Run the tests. The test runner will automatically pick up the new test. |
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