Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos-mynij-dev
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Mynij
slapos-mynij-dev
Commits
8053e6a4
Commit
8053e6a4
authored
Jan 22, 2019
by
Jérome Perrin
Committed by
Kirill Smelkov
Jan 22, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
helloworld: minimal test
parent
810505c4
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
451 additions
and
0 deletions
+451
-0
software/helloworld/test/README.md
software/helloworld/test/README.md
+1
-0
software/helloworld/test/setup.py
software/helloworld/test/setup.py
+50
-0
software/helloworld/test/test.py
software/helloworld/test/test.py
+79
-0
software/helloworld/test/utils.py
software/helloworld/test/utils.py
+321
-0
No files found.
software/helloworld/test/README.md
0 → 100644
View file @
8053e6a4
Tests for HelloWorld software release
software/helloworld/test/setup.py
0 → 100644
View file @
8053e6a4
##############################################################################
#
# 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.
#
##############################################################################
from
setuptools
import
setup
,
find_packages
version
=
'0.0.1.dev0'
name
=
'slapos.test.helloworld'
long_description
=
open
(
"README.md"
).
read
()
setup
(
name
=
name
,
version
=
version
,
description
=
"Test for SlapOS' helloworld"
,
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'
,
'requests'
,
],
zip_safe
=
True
,
test_suite
=
'test'
,
)
software/helloworld/test/test.py
0 → 100644
View file @
8053e6a4
##############################################################################
#
# 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
requests
import
utils
# for development: debugging logs and install Ctrl+C handler
if
os
.
environ
.
get
(
'SLAPOS_TEST_DEBUG'
):
import
logging
logging
.
basicConfig
(
level
=
logging
.
DEBUG
)
import
unittest
unittest
.
installHandler
()
class
HelloWorldTestCase
(
utils
.
SlapOSInstanceTestCase
):
# to be defined by subclasses
name
=
None
kind
=
None
@
classmethod
def
getSoftwareURLList
(
cls
):
return
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software.cfg'
)),)
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
"name"
:
cls
.
name
}
class
HTTPRequestTestMixin
(
object
):
"""Test that the service url.${kind} responds Hello ${name}
"""
def
test_get
(
self
):
url
=
self
.
computer_partition
.
getConnectionParameterDict
()[
'url.{}'
.
format
(
self
.
kind
)]
response
=
requests
.
get
(
url
)
self
.
assertEqual
(
requests
.
codes
[
'OK'
],
response
.
status_code
)
self
.
assertTrue
(
response
.
text
.
startswith
(
"Hello {}"
.
format
(
self
.
name
)),
response
.
text
)
class
TestPython
(
HelloWorldTestCase
,
HTTPRequestTestMixin
):
name
=
"Python"
kind
=
"python"
class
TestRuby
(
HelloWorldTestCase
,
HTTPRequestTestMixin
):
name
=
"Ruby"
kind
=
"ruby"
class
TestGolang
(
HelloWorldTestCase
,
HTTPRequestTestMixin
):
name
=
"Go"
kind
=
"go"
software/helloworld/test/utils.py
0 → 100644
View file @
8053e6a4
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment