From 570dd1784961763e847ed234722f6a6add4fdd01 Mon Sep 17 00:00:00 2001 From: sdemeesterde <samuel.demeester@student.uclouvain.be> Date: Wed, 27 Apr 2022 17:40:24 +0200 Subject: [PATCH] readme ok ? --- README.md | 47 ++++++++++++++++++++++++++++++++--------------- 1 file changed, 32 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 414aa93..9bb949e 100644 --- a/README.md +++ b/README.md @@ -19,44 +19,61 @@ Then use the specified arguments explained in the `statement.pdf`. ## 3. Folder Organization ``` -| headers/ +| interop/ | linksimulator/ | src/ -| test_files/ | tests/ -| unwanted_logs/ +| test_files/ +| tests_logs/ ``` +### 3.1 `interop/` + +This folder contains two sub folders: receivers and senders which respectively contains the receivers and senders of other groups with whom we perform some interoperability tests. -### 3. 1. `linksimulator/` +The command: +``` +make interop +``` +tests our sender with the receivers in `interop/receivers` and then our receiver with the senders in `interop/senders`. + +### 3. 2. `linksimulator/` This folder contains a [git repository](https://github.com/cnp3/Linksimulator). We use the linksimulaor to simulate a network with certain configurations like packets loss, delays, etc. Full description in the `linksimulator/README.md`. We did not write any of the code in the folder. -### 3. 2. `test_files/` +### 3. 3. `test_files/` -This folder contains testing files that we will be sendig between the `receiver` and the `sender`. Any file added to this folder will automatically be used in tests suites. +This folder contains testing files that we will be sendig between the `receiver` and the `sender`. Any file added to this folder will automatically be used in tests suites. + +### 3. 4. `tests_logs/` + +This folder is important because all the file generated by +``` +make interop +make tests +``` + +are stored there. ## 4. Testing For the testing we have a specific directory that contains our shell script tests. In order to execute our tests we advise to run the following Makefile command + ``` make tests ``` -In order to test the transfer of a file, you have to add a file in the `test_files`. The suite cases will automatically load the fle and transfer using our protocol. +The bash script responsible for those tests is **run_tests.sh**. -We have two types of tests suites. *Simple* and *Advanced* test suites. -### 4. 1. *Simple* Test Suites - -Simple tests don't use `linksimulator`, however they use `Valgrind` to check memory usage in both the sender and the receiver. After executing the `make [debug]`. One can run a simple test with the following command : +If you want to modify the suite files used for the tests, you have to add your file(s) to the directory `test_files`. Then you need to make your selection of file amongst the available files from `test_files` in the array *simple_test_files* for the Simple tests and *advanced_test_files* for the Advanced tests. +### 4. 1. *Simple* Test Suites +Simple tests don't use `linksimulator`, however they use `Valgrind` to check memory usage in both the sender and the receiver. ### 4. 2. *Advanced* Test Suites -TBA ... - -## 5. System Architecture +Advanced tests use the `linksimulator` and `Valgrind`. For every given file, it'll test `with FEC` and `without FEC`. The parameters of the network simulation used by `linksimulator` are the same for every tests but can by modified (see lines 68 to 72). -TBA ... \ No newline at end of file +Note: The advanced tests can be quite long to execute entirely. Feel free to modify the file used for the advanced test. \ No newline at end of file -- GitLab