From: aduskett at gmail.com <aduskett@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 2/2] support/testing: add python-django test
Date: Wed, 4 Dec 2019 12:06:29 -0800 [thread overview]
Message-ID: <20191204200629.686191-2-aduskett@gmail.com> (raw)
In-Reply-To: <20191204200629.686191-1-aduskett@gmail.com>
From: Adam Duskett <aduskett@greenlots.com>
This test comprises of four simple steps:
1: Start a new simple project called testsite.
2: Run ./manage.py migrate on the new testsite.
3: Run ./manage.py runserver 0.0.0.0:1234 & sleep 30
- The sleep 30 is necessary as it may take several seconds for
the django server to fully start.
4: Run netstat to ensure the server opened port 1234.
Signed-off-by: Adam Duskett <aduskett@greenlots.com>
---
.gitlab-ci.yml | 1 +
.../tests/package/sample_python_django.py | 1 +
.../tests/package/test_python_django.py | 35 +++++++++++++++++++
3 files changed, 37 insertions(+)
create mode 100644 support/testing/tests/package/sample_python_django.py
create mode 100644 support/testing/tests/package/test_python_django.py
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 22befa0427..75b2fcb37c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -448,6 +448,7 @@ tests.package.test_python_constantly.TestPythonPy3Constantly: { extends: .runtim
tests.package.test_python_crossbar.TestPythonPy3Crossbar: { extends: .runtime_test }
tests.package.test_python_cryptography.TestPythonPy2Cryptography: { extends: .runtime_test }
tests.package.test_python_cryptography.TestPythonPy3Cryptography: { extends: .runtime_test }
+tests.package.test_python_django.TestPythonPy3Django: { extends: .runtime_test }
tests.package.test_python_incremental.TestPythonPy2Incremental: { extends: .runtime_test }
tests.package.test_python_incremental.TestPythonPy3Incremental: { extends: .runtime_test }
tests.package.test_python_passlib.TestPythonPy2Passlib: { extends: .runtime_test }
diff --git a/support/testing/tests/package/sample_python_django.py b/support/testing/tests/package/sample_python_django.py
new file mode 100644
index 0000000000..c2bad566a7
--- /dev/null
+++ b/support/testing/tests/package/sample_python_django.py
@@ -0,0 +1 @@
+import django # noqa: F401
diff --git a/support/testing/tests/package/test_python_django.py b/support/testing/tests/package/test_python_django.py
new file mode 100644
index 0000000000..3db9b96123
--- /dev/null
+++ b/support/testing/tests/package/test_python_django.py
@@ -0,0 +1,35 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonDjango(TestPythonPackageBase):
+ config = TestPythonPackageBase.config
+ sample_scripts = ["tests/package/sample_python_django.py"]
+
+ def run_sample_scripts(self):
+ cmd = "cd /opt && /usr/bin/django-admin startproject testsite"
+ _, exit_code = self.emulator.run(cmd, timeout=30)
+ self.assertEqual(exit_code, 0)
+
+ cmd = "cd /opt/testsite && " + self.interpreter + " ./manage.py migrate"
+ output, exit_code = self.emulator.run(cmd, timeout=30)
+ self.assertIn("Operations to perform:", output[0])
+ self.assertEqual(exit_code, 0)
+
+ cmd = "cd /opt/testsite && " + self.interpreter + " ./manage.py runserver 0.0.0.0:1234 & "
+ # give some time to setup the server
+ cmd += "sleep 30"
+ _, exit_code = self.emulator.run(cmd, timeout=35)
+ self.assertEqual(exit_code, 0)
+
+ cmd = "netstat -ltn 2>/dev/null | grep 0.0.0.0:1234"
+ _, exit_code = self.emulator.run(cmd)
+ self.assertEqual(exit_code, 0)
+
+class TestPythonPy3Django(TestPythonDjango):
+ __test__ = True
+ config = TestPythonDjango.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_DJANGO=y
+ BR2_PACKAGE_PYTHON3_SQLITE=y
+ """
--
2.23.0
next prev parent reply other threads:[~2019-12-04 20:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-04 20:06 [Buildroot] [PATCH 1/2] package/python-django: bump to version 3.0 aduskett at gmail.com
2019-12-04 20:06 ` aduskett at gmail.com [this message]
2019-12-05 22:15 ` [Buildroot] [PATCH 2/2] support/testing: add python-django test Thomas Petazzoni
2019-12-05 23:35 ` Arnout Vandecappelle
2019-12-05 22:14 ` [Buildroot] [PATCH 1/2] package/python-django: bump to version 3.0 Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191204200629.686191-2-aduskett@gmail.com \
--to=aduskett@gmail.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox