[Buildroot] [git commit] support/testing/tests/package/test_python_flask: new test

Arnout Vandecappelle (Essensium/Mind) arnout at mind.be
Thu Sep 23 19:48:22 UTC 2021


commit: https://git.buildroot.net/buildroot/commit/?id=57260dab0cfb5de82b8c04684ff1bf5f0858be23
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

This commit adds a test for python-flask package. As we are about to
add python-flask-expects-json together with a test, it made sense to
also add a test for python-flask itself.

As far as the DEVELOPERS file is concerned, the test files are added
both to the existing maintainer of package/python-flask, as well as to
myself.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
---
 DEVELOPERS                                         |  4 +++
 .../testing/tests/package/sample_python_flask.py   |  7 ++++++
 support/testing/tests/package/test_python_flask.py | 29 ++++++++++++++++++++++
 3 files changed, 40 insertions(+)

diff --git a/DEVELOPERS b/DEVELOPERS
index 926c6a27d7..f22a1c4976 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1566,6 +1566,8 @@ F:	package/python-daemonize/
 F:	package/python-flask/
 F:	package/python-flask-babel/
 F:	package/python-gunicorn/
+F:	support/testing/tests/package/sample_python_flask.py
+F:	support/testing/tests/package/test_python_flask.py
 
 N:	Lionel Orry <lionel.orry at gmail.com>
 F:	package/mongrel2/
@@ -2694,7 +2696,9 @@ F:	package/wayland/
 F:	package/weston/
 F:	support/testing/tests/boot/test_syslinux.py
 F:	support/testing/tests/package/sample_python_augeas.py
+F:	support/testing/tests/package/sample_python_flask.py
 F:	support/testing/tests/package/test_python_augeas.py
+F:	support/testing/tests/package/test_python_flask.py
 F:	toolchain/
 
 N:	Timo Ketola <timo.ketola at exertus.fi>
diff --git a/support/testing/tests/package/sample_python_flask.py b/support/testing/tests/package/sample_python_flask.py
new file mode 100644
index 0000000000..a7941a94a6
--- /dev/null
+++ b/support/testing/tests/package/sample_python_flask.py
@@ -0,0 +1,7 @@
+from flask import Flask
+app = Flask(__name__)
+
+
+ at app.route('/')
+def hello_world():
+    return 'Hello, World!'
diff --git a/support/testing/tests/package/test_python_flask.py b/support/testing/tests/package/test_python_flask.py
new file mode 100644
index 0000000000..ef5d96bae9
--- /dev/null
+++ b/support/testing/tests/package/test_python_flask.py
@@ -0,0 +1,29 @@
+from tests.package.test_python import TestPythonPackageBase
+import os
+import time
+
+
+class TestPythonPy3Flask(TestPythonPackageBase):
+    __test__ = True
+    config = TestPythonPackageBase.config + \
+        """
+        BR2_PACKAGE_PYTHON3=y
+        BR2_PACKAGE_PYTHON_FLASK=y
+        """
+    sample_scripts = ["tests/package/sample_python_flask.py"]
+    timeout = 60
+
+    def test_run(self):
+        self.login()
+        self.check_sample_scripts_exist()
+        cmd = "FLASK_APP=%s %s -m flask run > /dev/null 2>&1 &" % (os.path.basename(self.sample_scripts[0]),
+                                                                   self.interpreter)
+        _, exit_code = self.emulator.run(cmd, timeout=self.timeout)
+
+        # Give enough time for the flask server to start up
+        time.sleep(15)
+
+        cmd = "wget -q -O - http://127.0.0.1:5000/"
+        output, exit_code = self.emulator.run(cmd, timeout=self.timeout)
+        self.assertEqual(exit_code, 0)
+        self.assertEqual(output[0], "Hello, World!")


More information about the buildroot mailing list