Noctam/DWP/ACS Test Harness/Diary/Week 1
| ACS Test Harness |
|---|
|
Meetings Existing System Specifications Diary |
Day 1: 06/06/2021
Initial workshop to discuss requirements and broad development strategy. See Meetings: Initial Workshop.
Day 2: 07/09/2021
In which I:
- installed and set up intellij + python on my noctam PC
- created simplistic
sim-startandsim-stopscripts to start and stop the CISSIM server - got it up and running, which required a bit of jiggery-pokery:
- needed to install
windows-cursesin my python environment:pip install windows-curses - Fixed a couple of relative paths hardcoded into a couple of python files. To wit:
- needed to install
commit 5205c969edcfe9e075ca8261a3ca2f13fa3e7129 Author: Stuart Wood (Noctam) <stuart.wood@noctam.co.uk> Date: Tue Sep 7 14:34:42 2021 +0100 Don't rely on relative paths for files/folders Adds a 'getrootfolder' function to pdutils which gets the root folder of the 'project', by getting the parent of the directory in which the pdutils file is found. I can't immediately think of any problem with this, and it means you can run it safely from anywhere. This also dynamically alters the 'FOLDERS' config value (actually it checks of the config value starts with '../' and replaces '../' with the root folder provided by getrootfolder()) when it loads the config.
- Stepped it through a DCI913 call to get an idea of a) what it did, and b) how it did it. My notes are available, for now, but in a nutshell:
OK, this is actually quite flexible, and, although the code is terse and uncommented, it's not that hard to follow. Ultimately, it doesn't do that much (in the above, quite narrow, use case) - I could fairly easily strip out everything that isn't required by a DCI call and just have that as our starting block of code... I might do that, though I want to get PDD and NPS in there too, neither of which are handled in my initial examination above.
Day 3: 08/09/2021
Plan
- Step through PDD processing in the CISSIM program
- Step through NPS processing too
- Document the aboves
- Start stripping out unused files / classes and reduce the program to its minimum codeset for ACS testing
- Start a design of the java version of it
- I'll probably need to talk through some aspects of it (inputs / outputs) with the FDACS team, maybe tomorrow for that.
Execution
- Well, I stepped through the PDD processing
- You can see the results at Notes/PDD Handling.
- I identified a few things which will need looking into - see Notes/CISSIM - the config processing is probably the main one since it's needed for PDD and it does some pretty meaty stuff at config loading time to determine the locations for the fields within PDD data blocks.
- I picked up some new setup instructions, which included reference to scripts that Sean has written to start and stop the servers - plural, i.e. the NPS server as well. Duh.
- Looked through NPS - looks really straightforward - doesn't really do that much as far as I can tell. I'll look at it more in a bit, because...
- I decided to take a half day, because I'm really feeling like I need the real stuff rather than the piecemeal bits that I'm looking at here. Gives me chance to catch up on some home chores too.
Plans for tomorrow
- Look through NPS and document it properly.
- Modify the scripts to start and stop the NPS Sim server too
- Really dive into the config to see what it does - more concerned with the PDD side of things than DCI / NPS
- Start stripping away the stuff that we don't immediately need for ACS Test Harness
- Broad design for the java CIS Sim server, with respect to ACS dev testing