Skip to content

Commit 73821fb

Browse files
committed
doc(demo/README): update
1 parent 38f0743 commit 73821fb

1 file changed

Lines changed: 27 additions & 17 deletions

File tree

demo/README.md

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,27 @@
1-
Example Test Suite Classes
2-
==========================
3-
This directory and its subdirectories contain a sample project that defines a library and a corresponding test suite in the `src` and `test` subdirectories, respectively.
4-
The example project has been verified to work with compilers and commands listed in the following table:
5-
6-
|Vendor |Tested shell command|
7-
|---------|--------------------|
8-
|LLVM 20 | `fpm test --compiler flang-new --flag`
9-
|GCC |
10-
|NAG |
11-
|Intel |
12-
131
Getting Started
14-
---------------
15-
Likely the fastest way to get started with Julienne is to copy the source code in this directory and modify it for your purposes:
2+
===============
3+
To get started with Julienne, review and test the demonstration project in this directory.
4+
Then copy the `main.F90` and `specimen_test_m.F90` files to your project's test directory.
5+
Finally, modify the files as described below to adapt them to your project.
6+
7+
Testing the Demonstration Project
8+
--------------------------------
9+
This demonstration project defines a trivial library named "specimen" in the `src`
10+
subdirectory and a test suite the `test` subdirectory. The test suite includes two passing
11+
tests and one intentionally failing test. Test Julienne setting your present working
12+
directory to the `demo/` subdirectory in a terminal window and then building and running the
13+
demonstration project's test suite using the command corresponding to your compiler in the
14+
table below.
15+
16+
|Vendor | Version/Build | Example shell command |
17+
|---------|-------------------------|------------------------------------------------------|
18+
|LLVM | 20.1.4 (Homebrew) | `fpm test --compiler flang-new` |
19+
|GCC | 14.2.0_1 (Homebrew) | `fpm test --compiler gfortran --profile release` |
20+
|NAG | 7.2 Build 7227 | `fpm test --compiler nagfor --flag -fpp` |
21+
|Intel | 2025.1.0 Build 20250317 | `fpm test --compiler ifx --flag "-fpp -O3 -coarray"` |
22+
23+
Setting Up Your Project's Test Suite
24+
------------------------------------
1625

1726
1. If you build your project with the Fortran Package Manager ([`fpm`](https://github.com/fotran-lang/fpm)), then you might copy the `main.F90` and `specimen_test_m.F90` files from this subdirectory to a `test/` subdirectory in the root of your project's source tree.
1827
2. Rename the `specimen_test_m.F90` file, the `specimen_test_m` module, and the `specimen_test_t` derived type and any references thereto, replacing `specimen` with the name of an entity that you intend to test -- most likely a module containing procedures or derived type with type-bound procedures.
@@ -27,7 +36,7 @@ The options include
2736
1. Writing an expression using Julienne's operators such as `.approximate.`, `.within`., and `.equalsExpected.`.
2837
2. Invoking the `test_diagnosis_t` constructor and using Julienne's `string_t` constructors to form a diagnostic string.
2938
`String_t` is a generic interface to various specific functions, each of which takes an argument of a different data type, kind, and rank (TKR) and defines a `string_t` result containing a charater representation of the function argument.
30-
Please see Julienne's online [documentation](https:///berkeleylab.github.io/julienne/) for the currently supported TKR.
39+
Please see Julienne's online [documentation] for the currently supported TKR.
3140
Please submit an issue to request support for additional TKR or submit a pull request to contribute such support.
3241

3342
#### Forming diagnostic strings from array data
@@ -57,8 +66,8 @@ FAILS on returning the counting numbers up to 3
5766
```
5867
To support a common array notation, Julienne also supports bracketing strings.
5968

60-
Diagnosis Function
61-
------------------
69+
Diagnosis Functions
70+
-------------------
6271
The Unified Modeling Language ([UML](https://wikipedia.org/Unified_modeling_langauge)) class diagram below depicts the class relationships involved in making the above example work:
6372

6473
```mermaid
@@ -172,3 +181,4 @@ class test_diagnosis_t{
172181
}
173182
```
174183

184+
[documentation]: https://berkeleylab.github.io/julienne

0 commit comments

Comments
 (0)