Aaron Joyce
Bryan Quirke
Erik Eviston
Jessa Pajarito
Neil Barry-Murphy
Activate the virtual environment (Python 2.7 required):
source venv/bin/activate
Run the setup script (First time setup following initial clone - required only once):
bash setup.sh
Restart mongo:
sudo service mongod restart
Run the flask application:
python app.py
(If The Flask Application Fails)
Install necessary requirements with root permissions and restart mongo:
sudo pip install -r requirements.txt
sudo service mongod restart
Now, re-start the application:
python app.py
Navigate to the homepage: http://127.0.0.1:5000/
Open another terminal in the same directory and execute the following:
Activate the virtual environment:
source venv/bin/activate
Once the app has been started on the previous terminal: - (PML and DINTO Log-file Generation)
tail -f info.log
(Testing methods for all new required features outlined below)
Begin Analysis
.coke_and_pepsi.pml
. Click Check Validity of Selected File
.Analyse File
.Select Knowledge Base System
.Search DDI Characterization Data
.db_1.csv
. Click View Interactions
.Finished - Return to Homepage
.Begin Analysis
.unnamed_construct.pml
. Click Check Validity of Selected File
.Begin Analysis
.duplicated_construct.pml
. Click Check Validity of Selected File
.Begin Analysis
.iden_parallel_ddi_2.pml
. Click Check Validity of Selected File
.peos/pml/drugfinder/pml-test-files/iden_parallel_ddi_2.pml
in any editor (such as gedit).Analyse File
.Select Knowledge Base System
.Search DDI Characterization Data
.db_1.csv
. Click View Interactions
.Finished - Return to Homepage
.peos/pml/drugfinder/pml-test-files/reorder_sequence.pml
in any editor (such as gedit).Begin Analysis
.reorder_sequence.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Reorder Sequence
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/reorder_sequence.pml
.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout reorder_sequence.pml
peos/pml/drugfinder/pml-test-files/pml_tx_serialize_branch_naive.pml
in any editor (such as gedit).Begin Analysis
.pml_tx_serialize_branch_naive.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Naive Branch Transformation
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/pml_tx_serialize_branch_naive.pml
.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout pml_tx_serialize_branch_naive.pml
peos/pml/drugfinder/pml-test-files/pml_tx_serialize_branch_2_way.pml
in any editor (such as gedit).Begin Analysis
.pml_tx_serialize_branch_2_way.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Two-Way Branch Transformation
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/pml_tx_serialize_branch_2_way.pml
.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout pml_tx_serialize_branch_2_way.pml
peos/pml/drugfinder/pml-test-files/remove_selection.pml
in any editor (such as gedit).Begin Analysis
.remove_selection.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Remove Selections Transformation
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/remove_selection.pml
.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout remove_selection.pml
peos/pml/drugfinder/pml-test-files/unroll_iteration.pml
in any editor (such as gedit).Begin Analysis
.unroll_iteration.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Unroll Iteration Transformation
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/unroll_iteration.pml
.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout unroll_iteration.pml
peos/pml/drugfinder/pml-test-files/sequence_parallelisation.pml
in any editor (such as gedit).Begin Analysis
.sequence_parallelisation.pml
. Click Check Validity of Selected File
.Analyse File
.Select Transformation Type
.Perform Parallelize Sequence Transformation
.Check Validity of Transformation
.peos/pml/drugfinder/pml-test-files/sequence_parallelisation.pml
in your editor.Reload
or equivalent. View changes.peos/pml/drugfinder/duplicate-pml-test-files/
.cd peos/pml/drugfinder/pml-test-files
git checkout sequence_parallelisation.pml
When finished with analysis of the system, execute:
deactivate
This will disable the virtual environment.
Please note that all explanations are accompanied by images.
See the documentation/testing/testing-process
section of this repo for more information.
depression.pml
or irritable_bowel_syndrome.pml
). - (PML file selection)depression.pml
describes only one drug, and will list all interactions of that drug.irritable_bowel_syndrome.pml
describes multiple (2) drugs, and will list the interactions between these 2 drugs. - (PML File Loading)pml_format_error.pml
, pml_format_correct_analysis_error.pml
or pml_format_correct_analysis_correct_no_drug_links.pml
).pml_format_error.pml
has a syntax error in the file. The system will highlight this.pml_format_correct_analysis_error.pml
describes a pml file that syntactically correct, but the analysis fails as no drug mentions are found. The system will also highlight this.pml_format_correct_analysis_correct_no_drug_links.pml
describes a test that has a syntactically correct pml file, yields drug or drug names from the analysis, but no links exist in DINTO for these referenced drugs. This test result will again be highlighted by the system.Installation for Ubuntu 16.04 will be handled by the setup script.
Open a new terminal and execute the following:
Log In to the Mongo shell:
mongo
Switch to the project database:
use app
List all currently available collections:
(Should be empty prior to launching the flask app)
db.getCollectionNames()
List all pml files in the project, for example:
db.dist.files.find()
List all pml files that you have selected as a user:
db.dist.selected.find()
List all pml files that have been analysed:
db.dist.analysis.find()