Skip to content

Commit 8af46b3

Browse files
committed
Update docs
1 parent e6cb96c commit 8af46b3

2 files changed

Lines changed: 28 additions & 8 deletions

File tree

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
## 0.2.1 (TBA)
2+
* Discover client-side tests when using `objectscript.conn.docker-compose` settings (#10)
3+
14
## 0.2.0 (22-May-2023)
25
* First published version.
36

README.md

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,17 +36,17 @@ In order to support topologies in which client-side-managed test classes have to
3636
3737
1. Ensure your VS Code workspace specifies its server connection(s) by referencing server(s) in the `intersystems.servers` configuration object which InterSystems Server Manager maintains. For example, assuming a server named `iris231` has been defined:
3838
39-
- For the client-side paradigm (in `settings.json`, or in `"settings"` object in `xxx.code-workspace` file):
40-
```
39+
- For the **client-side** paradigm (in `settings.json`, or in `"settings"` object in `xxx.code-workspace` file):
40+
```json
4141
"objectscript.conn": {
4242
"server": "iris231",
4343
"ns": "APP",
4444
"active": true
4545
},
4646
```
4747
48-
- For the server-side paradigm (in `xxx.code-workspace` file):
49-
```
48+
- For the **server-side** paradigm (in `xxx.code-workspace` file):
49+
```json
5050
"folders": [
5151
{
5252
"name": "iris231:APP-ISFS",
@@ -57,6 +57,19 @@ In order to support topologies in which client-side-managed test classes have to
5757
5858
> We recommend setting the `username` property of the server definition object, and using Server Manager's secure password storage feature to hold that user's password.
5959
60+
> If you are editing client-side and using the `docker-compose` object within your `objectscript.conn` settings to handle dynamic assignment of the web server port at the host end, omit the `server` property. You will have to put credentials in the settings as plaintext, so this should **only** be done with well-known 'standard' ones such as shown as an example below:
61+
```json
62+
"objectscript.conn" :{
63+
"ns": "APP",
64+
"username": "_SYSTEM",
65+
"password": "SYS",
66+
"docker-compose": {
67+
"service": "iris",
68+
"internalPort": 52773
69+
},
70+
"active": true
71+
},
72+
```
6073
2. For a workspace using client-side editing, test classes are sought in `.cls` files under the `internal/testing/unit_tests` subfolder, using the conventional layout of one additional subfolder per package-name element. If your test classes are located elsewhere, use the `intersystems.testingManager.client.relativeTestRoot` setting to point there.
6174

6275
> By setting this at the workspace level you can have different file layouts for different projects.
@@ -77,6 +90,9 @@ When a test class is open in an editor tab it displays icons in the gutter at th
7790

7891
The `...` menu of the Testing panel in Test Explorer includes several useful commands, including ones to collapse the tree and to clear all locally-stored test results.
7992

93+
## Debugging Tests
94+
After opening a test class, click in the gutter to set a VS Code breakpoint in the normal manner. Then launch the test-run with the Debug option on the context menu of the testing icons in the gutter.
95+
8096
## Recent Testing History
8197

8298
The %UnitTest framework persists results of runs in server-side tables. The 'Recent History' root folder lets you explore the most recent ten sets of results for each server and namespace the workspace uses.
@@ -87,10 +103,11 @@ Hovering on a run's folder reveals an action button which launches %UnitTest's o
87103

88104
This extension is a preview and has some known limitations:
89105

90-
- The extension uses server-side REST support for debugging even when tests are not being debugged. That support is broken in InterSystems IRIS 2021.1.3, and perhaps also in earlier 2021.1.x versions.
91-
- It has only been tested with InterSystems IRIS instances that use the English locale. Its technique for parsing the output from %UnitTest is likely to fail with other locales.
92-
- The `/autoload` feature of %UnitTest is not supported. This is only relevant to the client-side paradigm.
93-
- The loading and deleting of unit test classes which occurs when using the client-side paradigm will raise corresponding events on any source control class that the target namespace may have been configured to use.
106+
- The extension uses server-side REST support for debugging even when tests are not being debugged. That support is broken in InterSystems IRIS 2021.1.3, and maybe also in earlier 2021.1.x versions.
107+
- Debugging tests in client-side mode has issues arising from how your workspace stores your test classes outside the source tree of the classes they are testing. Please see the extension's repository (link below) and add new issues if you experience problems not already logged there.
108+
- The extension has only been tested with InterSystems IRIS instances that use the English locale. Its technique for parsing the output from %UnitTest is likely to fail with other locales.
109+
- The `/autoload` feature of %UnitTest is not supported. This is only relevant to client-side mode.
110+
- The loading and deleting of unit test classes which occurs when using client-side mode will raise corresponding events on any source control class that the target namespace may have been configured to use.
94111

95112
## Feedback
96113

0 commit comments

Comments
 (0)