# ndn integration-tests

This directory contains tools required by one or more integration tests.
Tools are built automatically during the installation phase.

## Instructions for adding a new tool:
------------------------------------
1. Keep each program to a single cpp file when feasible.
2. In each program source code, insert a comment to indicate which test case(s) uses this program
3. Add the tool name to the Makefile programs list.

## Build Instructions

To compile and install:

    make
    sudo make install

To uninstall:

    sudo make uninstall