From f6a3986d9c547ce91b2e0735fc0a2099a0718949 Mon Sep 17 00:00:00 2001
From: inso <insomniak.fr@gmaiL.com>
Date: Sat, 14 Jan 2017 16:10:46 +0100
Subject: [PATCH] Squashed commit of the following:

commit b3d5d716bcaea5ccb76b013959449f529a9b2b25
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 15:58:35 2017 +0100

    Use sys.path

commit 55e4236a0a194a7ca1f438147eba97ef735f90d2
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 15:40:01 2017 +0100

    Python path on appveyor

commit 3e0ff3cf3ceae00b45a52ed4acf6d4cd9382e20f
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 15:33:51 2017 +0100

    Run tests on appveyor

commit 6ec6adfc7ac7ef9bab30d9491cd7b5e94fc3fc7d
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 10:51:52 2017 +0100

    Install dunst on ubuntu

commit e6eba8a2ee85d4b5552e8bd50d5617ce25139e8a
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 10:42:17 2017 +0100

    Move tests

commit 95fe8829e9c0bfe4ea52e604390c95ffa316c1c5
Author: inso <insomniak.fr@gmaiL.com>
Date:   Sat Jan 14 10:05:14 2017 +0100

    py.test on linux + Qt 5.6 on window

commit 8c14f9d5608ab95a0c7abbfc8e3c78d3c98e61f4
Author: inso <insomniak.fr@gmaiL.com>
Date:   Fri Jan 13 23:41:50 2017 +0100

    pytest on linux

commit 5243b1af38ccac7b427c328512a3c09a1343a879
Author: inso <insomniak.fr@gmaiL.com>
Date:   Fri Jan 13 23:38:32 2017 +0100

    Fix appveyor

commit 5cd764969b15650b82bef24bf123b3f01ce307ee
Author: inso <insomniak.fr@gmaiL.com>
Date:   Fri Jan 13 23:36:20 2017 +0100

    Fix ci
---
 appveyor.yml                                             | 9 +++------
 ci/appveyor/build.cmd                                    | 6 +++---
 ci/appveyor/tests.cmd                                    | 5 ++---
 ci/travis/before_install.sh                              | 2 +-
 ci/travis/build.sh                                       | 1 +
 ci/travis/test.sh                                        | 4 ++--
 {src/sakia/tests => tests}/__init__.py                   | 0
 {src/sakia/tests => tests}/conftest.py                   | 6 +++++-
 {src/sakia/tests => tests}/functional/__init__.py        | 0
 .../functional/test_certification_dialog.py              | 0
 .../functional/test_connection_cfg_dialog.py             | 0
 .../functional/test_preferences_dialog.py                | 0
 .../tests => tests}/functional/test_transfer_dialog.py   | 0
 {src/sakia/tests => tests}/technical/__init__.py         | 0
 .../tests => tests}/technical/test_identities_service.py | 0
 .../technical/test_transactions_service.py               | 0
 {src/sakia/tests => tests}/unit/__init__.py              | 0
 {src/sakia/tests => tests}/unit/data/__init__.py         | 0
 .../sakia/tests => tests}/unit/data/test_appdata_file.py | 0
 .../tests => tests}/unit/data/test_blockchains_repo.py   | 0
 .../unit/data/test_certifications_repo.py                | 0
 .../tests => tests}/unit/data/test_connections_repo.py   | 0
 .../tests => tests}/unit/data/test_dividends_repo.py     | 0
 .../tests => tests}/unit/data/test_identies_repo.py      | 0
 .../tests => tests}/unit/data/test_node_connector.py     | 0
 {src/sakia/tests => tests}/unit/data/test_nodes_repo.py  | 0
 .../sakia/tests => tests}/unit/data/test_sources_repo.py | 0
 .../tests => tests}/unit/data/test_transactions_repo.py  | 0
 .../unit/data/test_user_parameters_file.py               | 0
 {src/sakia/tests => tests}/unit/gui/__init__.py          | 0
 {src/sakia/tests => tests}/unit/gui/test_generic_tree.py | 0
 {src/sakia/tests => tests}/unit/money/__init__.py        | 0
 .../tests => tests}/unit/money/test_quantitative.py      | 0
 .../tests => tests}/unit/money/test_quantitative_zsum.py | 0
 {src/sakia/tests => tests}/unit/money/test_relative.py   | 0
 .../tests => tests}/unit/money/test_relative_zsum.py     | 0
 {src/sakia/tests => tests}/unit/test_decorators.py       | 0
 37 files changed, 17 insertions(+), 16 deletions(-)
 rename {src/sakia/tests => tests}/__init__.py (100%)
 rename {src/sakia/tests => tests}/conftest.py (98%)
 rename {src/sakia/tests => tests}/functional/__init__.py (100%)
 rename {src/sakia/tests => tests}/functional/test_certification_dialog.py (100%)
 rename {src/sakia/tests => tests}/functional/test_connection_cfg_dialog.py (100%)
 rename {src/sakia/tests => tests}/functional/test_preferences_dialog.py (100%)
 rename {src/sakia/tests => tests}/functional/test_transfer_dialog.py (100%)
 rename {src/sakia/tests => tests}/technical/__init__.py (100%)
 rename {src/sakia/tests => tests}/technical/test_identities_service.py (100%)
 rename {src/sakia/tests => tests}/technical/test_transactions_service.py (100%)
 rename {src/sakia/tests => tests}/unit/__init__.py (100%)
 rename {src/sakia/tests => tests}/unit/data/__init__.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_appdata_file.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_blockchains_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_certifications_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_connections_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_dividends_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_identies_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_node_connector.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_nodes_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_sources_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_transactions_repo.py (100%)
 rename {src/sakia/tests => tests}/unit/data/test_user_parameters_file.py (100%)
 rename {src/sakia/tests => tests}/unit/gui/__init__.py (100%)
 rename {src/sakia/tests => tests}/unit/gui/test_generic_tree.py (100%)
 rename {src/sakia/tests => tests}/unit/money/__init__.py (100%)
 rename {src/sakia/tests => tests}/unit/money/test_quantitative.py (100%)
 rename {src/sakia/tests => tests}/unit/money/test_quantitative_zsum.py (100%)
 rename {src/sakia/tests => tests}/unit/money/test_relative.py (100%)
 rename {src/sakia/tests => tests}/unit/money/test_relative_zsum.py (100%)
 rename {src/sakia/tests => tests}/unit/test_decorators.py (100%)

diff --git a/appveyor.yml b/appveyor.yml
index 85c67e8e..28d874fb 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -11,7 +11,7 @@ environment:
       PYTHON_ARCH: "64"
       CONDA_PY: "35"
       CONDA_NPY: "18"
-      QTDIR: "C:\\Qt\\5.7\\msvc2015_64"
+      QTDIR: "C:\\Qt\\5.6\\msvc2015_64"
       platform: x64
 
     - PYTHON: "C:\\Python35_32"
@@ -19,7 +19,7 @@ environment:
       PYTHON_ARCH: "32"
       CONDA_PY: "35"
       CONDA_NPY: "18"
-      QTDIR: "C:\\Qt\\5.7\\msvc2015"
+      QTDIR: "C:\\Qt\\5.6\\msvc2015"
       platform: x86
 
 install:
@@ -36,10 +36,7 @@ install:
   #- choco install -y vcredist2015
   - "%CMD_IN_ENV% conda config --set always_yes yes --set changeps1 no"
   - "%CMD_IN_ENV% conda config --add channels inso/channel/sakia"
-  - "%CMD_IN_ENV% conda create -q -n test-environment python=%PYTHON_VERSION% libsodium=1.0.3 setuptools=19.2"
-
-cache:
-  - C:\Qt\5.7\5.7
+  - "%CMD_IN_ENV% conda create -q -n test-environment python=%PYTHON_VERSION% pyqt5=5.6 libsodium=1.0.3 setuptools=19.2"
 
 build_script:
   - ".\\ci\\appveyor\\build.cmd"
diff --git a/ci/appveyor/build.cmd b/ci/appveyor/build.cmd
index 4eb6a091..37c9a8dd 100644
--- a/ci/appveyor/build.cmd
+++ b/ci/appveyor/build.cmd
@@ -5,12 +5,12 @@ call activate test-environment
 echo "%PATH%"
 echo "%QT_PLUGIN_PATH%"
 python -V
-call pyuic5 --version
-
-pyrcc5 -version
 
 lrelease -version
 
+call pyuic5 --version
+pyrcc5 -version
+
 pip install -r requirements.txt
 pip install pyinstaller
 pip install six
diff --git a/ci/appveyor/tests.cmd b/ci/appveyor/tests.cmd
index e901b0ac..61e3c79a 100644
--- a/ci/appveyor/tests.cmd
+++ b/ci/appveyor/tests.cmd
@@ -11,8 +11,7 @@ pyrcc5 -version
 
 lrelease -version
 
-echo "%CWD%"
-
-py.test
+echo "%cd%"
+py.test tests/
 
 if %errorlevel% neq 0 exit /b 1
\ No newline at end of file
diff --git a/ci/travis/before_install.sh b/ci/travis/before_install.sh
index ff73d483..5ff6df18 100755
--- a/ci/travis/before_install.sh
+++ b/ci/travis/before_install.sh
@@ -27,7 +27,7 @@ then
             libxcb-xfixes0-dev libxrender-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0 \
             libxcb-render-util0-dev libxcb-glx0-dev libgl1-mesa-dri libegl1-mesa libpcre3 libgles2-mesa-dev \
             freeglut3-dev libfreetype6-dev xorg-dev xserver-xorg-input-void xserver-xorg-video-dummy xpra libosmesa6-dev \
-            curl libdbus-1-dev libdbus-glib-1-dev autoconf automake libtool libgstreamer-plugins-base0.10-0
+            curl libdbus-1-dev libdbus-glib-1-dev autoconf automake libtool libgstreamer-plugins-base0.10-0 dunst
     wget https://download.qt.io/official_releases/qt/5.7/5.7.1/qt-opensource-linux-x64-5.7.1.run
     chmod +x qt-opensource-linux-x64-5.7.1.run
     ./qt-opensource-linux-x64-5.7.1.run --script $HOME/build/duniter/sakia/ci/travis/qt-installer-noninteractive.qs
diff --git a/ci/travis/build.sh b/ci/travis/build.sh
index 0424e008..5b374636 100755
--- a/ci/travis/build.sh
+++ b/ci/travis/build.sh
@@ -8,6 +8,7 @@ pyenv shell $PYENV_PYTHON_VERSION
 pip install --upgrade pip
 pyenv rehash
 pip install coveralls
+pip install pytest-cov
 pip install pyinstaller
 pip install PyQt5
 pip install -r requirements.txt
diff --git a/ci/travis/test.sh b/ci/travis/test.sh
index f6567784..ad111260 100755
--- a/ci/travis/test.sh
+++ b/ci/travis/test.sh
@@ -6,7 +6,7 @@ if [ $TRAVIS_OS_NAME == "linux" ]
 then
     export XVFBARGS="-screen 0 1280x1024x24"
     export DISPLAY=:99.0
-    sudo sh -e /etc/init.d/xvfb restart
+    sh -e /etc/init.d/xvfb start
     sleep 3
 fi
 
@@ -14,7 +14,7 @@ cd $HOME/build/duniter/sakia
 pyenv shell $PYENV_PYTHON_VERSION
 if [ $TRAVIS_OS_NAME == "linux" ]
 then
-    coverage run --source=sakia.core,sakia.gui,sakia.models py.test
+    py.test --cov=sakia tests/
 else
     py.test
 fi
diff --git a/src/sakia/tests/__init__.py b/tests/__init__.py
similarity index 100%
rename from src/sakia/tests/__init__.py
rename to tests/__init__.py
diff --git a/src/sakia/tests/conftest.py b/tests/conftest.py
similarity index 98%
rename from src/sakia/tests/conftest.py
rename to tests/conftest.py
index 9bc7e08f..c2cbb2e6 100644
--- a/src/sakia/tests/conftest.py
+++ b/tests/conftest.py
@@ -3,6 +3,11 @@ import asyncio
 import quamash
 import sqlite3
 import mirage
+import sys
+import os
+
+sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'src')))
+
 from duniterpy.documents import BlockUID
 from sakia.app import Application
 from sakia.options import SakiaOptions
@@ -11,7 +16,6 @@ from sakia.data.entities import *
 from sakia.data.repositories import *
 from sakia.services import DocumentsService
 
-
 _application_ = []
 
 
diff --git a/src/sakia/tests/functional/__init__.py b/tests/functional/__init__.py
similarity index 100%
rename from src/sakia/tests/functional/__init__.py
rename to tests/functional/__init__.py
diff --git a/src/sakia/tests/functional/test_certification_dialog.py b/tests/functional/test_certification_dialog.py
similarity index 100%
rename from src/sakia/tests/functional/test_certification_dialog.py
rename to tests/functional/test_certification_dialog.py
diff --git a/src/sakia/tests/functional/test_connection_cfg_dialog.py b/tests/functional/test_connection_cfg_dialog.py
similarity index 100%
rename from src/sakia/tests/functional/test_connection_cfg_dialog.py
rename to tests/functional/test_connection_cfg_dialog.py
diff --git a/src/sakia/tests/functional/test_preferences_dialog.py b/tests/functional/test_preferences_dialog.py
similarity index 100%
rename from src/sakia/tests/functional/test_preferences_dialog.py
rename to tests/functional/test_preferences_dialog.py
diff --git a/src/sakia/tests/functional/test_transfer_dialog.py b/tests/functional/test_transfer_dialog.py
similarity index 100%
rename from src/sakia/tests/functional/test_transfer_dialog.py
rename to tests/functional/test_transfer_dialog.py
diff --git a/src/sakia/tests/technical/__init__.py b/tests/technical/__init__.py
similarity index 100%
rename from src/sakia/tests/technical/__init__.py
rename to tests/technical/__init__.py
diff --git a/src/sakia/tests/technical/test_identities_service.py b/tests/technical/test_identities_service.py
similarity index 100%
rename from src/sakia/tests/technical/test_identities_service.py
rename to tests/technical/test_identities_service.py
diff --git a/src/sakia/tests/technical/test_transactions_service.py b/tests/technical/test_transactions_service.py
similarity index 100%
rename from src/sakia/tests/technical/test_transactions_service.py
rename to tests/technical/test_transactions_service.py
diff --git a/src/sakia/tests/unit/__init__.py b/tests/unit/__init__.py
similarity index 100%
rename from src/sakia/tests/unit/__init__.py
rename to tests/unit/__init__.py
diff --git a/src/sakia/tests/unit/data/__init__.py b/tests/unit/data/__init__.py
similarity index 100%
rename from src/sakia/tests/unit/data/__init__.py
rename to tests/unit/data/__init__.py
diff --git a/src/sakia/tests/unit/data/test_appdata_file.py b/tests/unit/data/test_appdata_file.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_appdata_file.py
rename to tests/unit/data/test_appdata_file.py
diff --git a/src/sakia/tests/unit/data/test_blockchains_repo.py b/tests/unit/data/test_blockchains_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_blockchains_repo.py
rename to tests/unit/data/test_blockchains_repo.py
diff --git a/src/sakia/tests/unit/data/test_certifications_repo.py b/tests/unit/data/test_certifications_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_certifications_repo.py
rename to tests/unit/data/test_certifications_repo.py
diff --git a/src/sakia/tests/unit/data/test_connections_repo.py b/tests/unit/data/test_connections_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_connections_repo.py
rename to tests/unit/data/test_connections_repo.py
diff --git a/src/sakia/tests/unit/data/test_dividends_repo.py b/tests/unit/data/test_dividends_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_dividends_repo.py
rename to tests/unit/data/test_dividends_repo.py
diff --git a/src/sakia/tests/unit/data/test_identies_repo.py b/tests/unit/data/test_identies_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_identies_repo.py
rename to tests/unit/data/test_identies_repo.py
diff --git a/src/sakia/tests/unit/data/test_node_connector.py b/tests/unit/data/test_node_connector.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_node_connector.py
rename to tests/unit/data/test_node_connector.py
diff --git a/src/sakia/tests/unit/data/test_nodes_repo.py b/tests/unit/data/test_nodes_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_nodes_repo.py
rename to tests/unit/data/test_nodes_repo.py
diff --git a/src/sakia/tests/unit/data/test_sources_repo.py b/tests/unit/data/test_sources_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_sources_repo.py
rename to tests/unit/data/test_sources_repo.py
diff --git a/src/sakia/tests/unit/data/test_transactions_repo.py b/tests/unit/data/test_transactions_repo.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_transactions_repo.py
rename to tests/unit/data/test_transactions_repo.py
diff --git a/src/sakia/tests/unit/data/test_user_parameters_file.py b/tests/unit/data/test_user_parameters_file.py
similarity index 100%
rename from src/sakia/tests/unit/data/test_user_parameters_file.py
rename to tests/unit/data/test_user_parameters_file.py
diff --git a/src/sakia/tests/unit/gui/__init__.py b/tests/unit/gui/__init__.py
similarity index 100%
rename from src/sakia/tests/unit/gui/__init__.py
rename to tests/unit/gui/__init__.py
diff --git a/src/sakia/tests/unit/gui/test_generic_tree.py b/tests/unit/gui/test_generic_tree.py
similarity index 100%
rename from src/sakia/tests/unit/gui/test_generic_tree.py
rename to tests/unit/gui/test_generic_tree.py
diff --git a/src/sakia/tests/unit/money/__init__.py b/tests/unit/money/__init__.py
similarity index 100%
rename from src/sakia/tests/unit/money/__init__.py
rename to tests/unit/money/__init__.py
diff --git a/src/sakia/tests/unit/money/test_quantitative.py b/tests/unit/money/test_quantitative.py
similarity index 100%
rename from src/sakia/tests/unit/money/test_quantitative.py
rename to tests/unit/money/test_quantitative.py
diff --git a/src/sakia/tests/unit/money/test_quantitative_zsum.py b/tests/unit/money/test_quantitative_zsum.py
similarity index 100%
rename from src/sakia/tests/unit/money/test_quantitative_zsum.py
rename to tests/unit/money/test_quantitative_zsum.py
diff --git a/src/sakia/tests/unit/money/test_relative.py b/tests/unit/money/test_relative.py
similarity index 100%
rename from src/sakia/tests/unit/money/test_relative.py
rename to tests/unit/money/test_relative.py
diff --git a/src/sakia/tests/unit/money/test_relative_zsum.py b/tests/unit/money/test_relative_zsum.py
similarity index 100%
rename from src/sakia/tests/unit/money/test_relative_zsum.py
rename to tests/unit/money/test_relative_zsum.py
diff --git a/src/sakia/tests/unit/test_decorators.py b/tests/unit/test_decorators.py
similarity index 100%
rename from src/sakia/tests/unit/test_decorators.py
rename to tests/unit/test_decorators.py
-- 
GitLab