PLUTO is a cross platform desktop application that can be used to connect to the deepmarket network.
This project is in active development and is being maintained by the team members listed below. If you would like to submit changes, please open a pull request. Please read the getting set up to develop locally guide.
This project requires Python 3.6. Make sure python3.6 is installed before attempting any of this!
To check version:
$ python --version
Docker is required for this project if you want to add resources to the Deepmarket Network. To install docker, please follow the docker-mentation located here.
To verify that your installation of docker is running correctly, please confirm that the docker daemon
is running. Basically, if running docker run hello-world
from the command line does not throw an error, you should be ready.
First you'll need to install the required dependencies. We use the pipenv
package management tool to make managing dependencies easier. For more info on the tool, see here. To install:
$ python -m pip install pipenv
Then to install dependencies:
$ pipenv install
If you receive an error related to the python binary, try:
$ pipenv install --python=$(which python3)
We use fbs as the application runtime. It is recommended to run PLUTO by interacting with it's command line interface:
# Run the application
$ fbs run
You should now be running a development version of PLUTO!
Use pipenv
to activate a virtual environment necessary for running this project.
$ pipenv shell
It is recommended that you read the getting set up to develop locally guide.
Testing is done using two libraries: Python's builtin Unittest
for unit testing and behave
for functional BDD tests.
They can be ran independently. Make sure that the virtual environment has been activated before running these.
$ python -m unittest discover ./src/unittest/python
$ python -m behave ./src/integrationtest/python
Alternately, these can be run without running pipenv shell
first:
$ pipenv run python -m unittest discover ./src/unittest/python
$ pipenv run python -m behave ./src/integrationtest/python
pipenv run {cmd}
will run the subsequent command within the virtual environment defined in the Pipfile
.
Note that you must be in the project root directory to run the project. We use the fman build tool for packaging, so from the root directory, simply:
$ pienv shell
$ fbs run
Will spin up a local instance of the project!
- Add mocks for integration tests