diff --git a/software/gitlab/test/README.md b/software/gitlab/test/README.md new file mode 100644 index 0000000000000000000000000000000000000000..72354fb892b90782c26ddbbea1a7264c4051ad70 --- /dev/null +++ b/software/gitlab/test/README.md @@ -0,0 +1 @@ +Tests for Gitlab software release diff --git a/software/gitlab/test/setup.py b/software/gitlab/test/setup.py new file mode 100644 index 0000000000000000000000000000000000000000..1f650ca79779b8f0ed079d3a9a7adc9a89ac9fa6 --- /dev/null +++ b/software/gitlab/test/setup.py @@ -0,0 +1,52 @@ +############################################################################## +# +# Copyright (c) 2018 Nexedi SA and Contributors. All Rights Reserved. +# +# WARNING: This program as such is intended to be used by professional +# programmers who take the whole responsibility of assessing all potential +# consequences resulting from its eventual inadequacies and bugs +# End users who are looking for a ready-to-use solution with commercial +# guarantees and support are strongly adviced to contract a Free Software +# Service Company +# +# This program is Free Software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 3 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################## +from setuptools import setup, find_packages + +version = '0.0.1.dev0' +name = 'slapos.test.gitlab' +long_description = open("README.md").read() + +setup( + name=name, + version=version, + description="Test for SlapOS' Gitlab", + long_description=long_description, + long_description_content_type='text/markdown', + maintainer="Nexedi", + maintainer_email="info@nexedi.com", + url="https://lab.nexedi.com/nexedi/slapos", + packages=find_packages(), + install_requires=[ + 'slapos.core', + 'slapos.libnetworkcache', + 'erp5.util', + 'supervisor', + 'requests', + ], + zip_safe=True, + test_suite='test', +) diff --git a/software/gitlab/test/test.py b/software/gitlab/test/test.py new file mode 100644 index 0000000000000000000000000000000000000000..5275d3e817e8959b6cc1a0852016215e657fd8aa --- /dev/null +++ b/software/gitlab/test/test.py @@ -0,0 +1,56 @@ +############################################################################## +# +# Copyright (c) 2019 Nexedi SA and Contributors. All Rights Reserved. +# +# WARNING: This program as such is intended to be used by professional +# programmers who take the whole responsibility of assessing all potential +# consequences resulting from its eventual inadequacies and bugs +# End users who are looking for a ready-to-use solution with commercial +# guarantees and support are strongly adviced to contract a Free Software +# Service Company +# +# This program is Free Software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 3 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +############################################################################## + +import os +import logging +from six.moves.urllib.parse import urlparse + +import requests + +from slapos.testing.testcase import makeModuleSetUpAndTestCaseClass + + +setUpModule, SlapOSInstanceTestCase = makeModuleSetUpAndTestCaseClass( + os.path.abspath( + os.path.join(os.path.dirname(__file__), '..', 'software.cfg'))) + + +class TestGitlab(SlapOSInstanceTestCase): + __partition_reference__ = 'G' # solve path too long for postgresql and unicorn + + @classmethod + def getInstanceSoftwareType(cls): + return 'gitlab-test' + + def setUp(self): + self.backend_url = self.computer_partition.getConnectionParameterDict( + )['backend_url'] + + def test_http_get(self): + resp = requests.get(self.backend_url, verify=False) + self.assertTrue( + resp.status_code in [requests.codes.ok, requests.codes.found])