-
Notifications
You must be signed in to change notification settings - Fork 21
Workflow
The first time, you need to clone the repository on your local machine
git clone https://github.com/idaholab/TEAL.git
or if you already have a clone, you just need to update it
cd TEAL
git pull
First, a ticket needs to be created in GITHUB under "Issues" describing the development. For this, click on "Issues" on the left and then "+ New Issue" on the top right.
After that, a new branch of the repository from "devel" can be created:
cd TEAL
git checkout devel
git checkout -b username/branch_name
cd TEAL
git fetch
git checkout username/branch_name
To edit files use
git add -u
and to create new files in the repository, use
git add new_file
git commit
Note that this assumes that:
git config --global push.default simple
is used.
git push --set-upstream origin username/branch_name
After the first push, then:
git push
can be used.
Go to https://github.com/idaholab/TEAL/pulls and click on "New Pull Request". Then select the branch you pushed, and add a description, and "Submit pull request".
Then, a peer reviewer that you designate can look at it and merge it.
The "Pull Request" should represent a complete task but as small as possible. This improves the quality of the review process.
For input file changes, two things need to be done:
- Update the manual to describe the new file format.
- Email the mailing list about the change.
Regression tests for the python RAVEN framework and plugins are found in TEAL/tests
. In order to add a new test, the following node must be included in the test file within the <Simulation>
block:
<Simulation>
...
<TestInfo>
<name>framework/path/to/test/label</name>
<author>AuthorGitLabTag</author>
<created>YYYY-MM-DD</created>
<description>
Paragraph describing workflows, modules, classes, entities, etcetera, how they are tested, and any other notes
</description>
<requirements>RequirementsLabel</requirements>
<analytic>paragraph description of analytic test</analytic>
<revisions>
<revision author="AuthorGitLabTag" date="YYYY-MM-DD">paragraph description of revision</revision>
</revisions>
...
</TestInfo>
...
</Simulation>
The <requirements>
and <analytic>
nodes are optional, for those tests who satisfy an NQA design requirement and/or have an analytic solution documented in the analytic tests document. Other notes on block contents:
- name: this is the test framework path, as well as the name/label assigned in the
tests
file block. This is the path and name that show up when running the tests using RAVEN ROOK regression test system (run_tests
). - author: this is the GITHUB tag of the author who constructed this test originally.
- created: this is the date on which the test was originally created, in year-month-day YYYY-MM-DD XSD date format.
- description: general notes about what workflows or other methods are tested.
- requirements: (optional) lists the NQA requirement that this test satisfies.
- analytic: (optional) describes the analytic nature of this test and how it is documented in the analytic tests documentation.
- an additional node is optionally available to demonstrate significant revisions to a test.