From 9baeeb37552950ae860cb90b165c436a64cea4c6 Mon Sep 17 00:00:00 2001
From: Qubad786 <muhammadrehan69@gmail.com>
Date: Thu, 4 May 2017 20:27:49 +0500
Subject: [PATCH] convert to django app

---
 .coveragerc           |  4 ++++
 .gitignore            |  2 +-
 scripts/test.sh       |  3 +--
 test.py               | 34 ++++++++++++++++++++++++++++++++++
 test_requirements.txt |  1 +
 5 files changed, 41 insertions(+), 3 deletions(-)
 create mode 100644 .coveragerc
 create mode 100644 test.py

diff --git a/.coveragerc b/.coveragerc
new file mode 100644
index 0000000..3a33749
--- /dev/null
+++ b/.coveragerc
@@ -0,0 +1,4 @@
+# .coveragerc for xblock-lti-consumer
+[run]
+data_file = .coverage
+source = lti_consumer
diff --git a/.gitignore b/.gitignore
index c376115..8ab4137 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,4 +14,4 @@ codekit-config.json
 
 ### Testing artifacts
 .coverage
-var/
\ No newline at end of file
+var/
diff --git a/scripts/test.sh b/scripts/test.sh
index ea99b7d..f5f08fe 100755
--- a/scripts/test.sh
+++ b/scripts/test.sh
@@ -1,7 +1,6 @@
 #!/usr/bin/env bash
 set -e
 
-export DJANGO_SETTINGS_MODULE="workbench.settings"
 mkdir -p var
 rm -rf .coverage
-nosetests --with-coverage --cover-package="lti_consumer"
+python -m coverage run --rcfile=.coveragerc ./test.py $1 --noinput
diff --git a/test.py b/test.py
new file mode 100644
index 0000000..5659954
--- /dev/null
+++ b/test.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+"""
+Run tests for the LTI Consumer XBlock
+"""
+import os
+import sys
+
+if __name__ == '__main__':
+    os.environ.setdefault('DJANGO_SETTINGS_MODULE', u'workbench.settings')
+
+    try:
+        from django.conf import settings # pylint: disable=wrong-import-position
+        from django.core.management import execute_from_command_line  # pylint: disable=wrong-import-position
+    except ImportError:
+        # The above import may fail for some other reason. Ensure that the
+        # issue is really that Django is missing to avoid masking other
+        # exceptions on Python 2.
+        try:
+            import django  # pylint: disable=unused-import, wrong-import-position
+        except ImportError:
+            raise ImportError(
+             "Couldn't import Django. Are you sure it's installed and "
+             "available on your PYTHONPATH environment variable? Did you "
+             "forget to activate a virtual environment?"
+            )
+        raise
+
+    settings.INSTALLED_APPS += (u'lti_consumer',)
+
+    arguments = sys.argv[1:]
+    options = [argument for argument in arguments if argument.startswith('-')]
+    paths = [argument for argument in arguments if argument not in options]
+    execute_from_command_line([sys.argv[0], 'test'] + paths + options)
diff --git a/test_requirements.txt b/test_requirements.txt
index 5ae99ae..fc069cb 100644
--- a/test_requirements.txt
+++ b/test_requirements.txt
@@ -1,5 +1,6 @@
 -r requirements.txt
 
+django-nose==1.4.4
 astroid==1.3.8  # Pinning to avoid backwards incompatibility issue with pylint/pylint-django
 coveralls
 pep8
-- 
GitLab