summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Wittig <max.wittig95@gmail.com>2019-07-21 20:34:36 +0200
committerGitHub <noreply@github.com>2019-07-21 20:34:36 +0200
commit262b222000dad30fc6dfc63ccf2fa200eba09662 (patch)
treeb11fbfa6249dcc8526e914af0c099d314efa48a8
parent0b0a60fd72fc7b1073c4b5f32022b3a063ec9c96 (diff)
parent3b523f4c39ba4b3eacc9e76fcb22de7b426d2f45 (diff)
downloadgitlab-262b222000dad30fc6dfc63ccf2fa200eba09662.tar.gz
Merge pull request #836 from python-gitlab/test/project-releases
test: add project releases test
-rw-r--r--.travis.yml14
-rwxr-xr-xtools/build_test_env.sh7
-rw-r--r--tools/python_test_v4.py30
-rw-r--r--tox.ini2
4 files changed, 41 insertions, 12 deletions
diff --git a/.travis.yml b/.travis.yml
index 18ded19..be7fdf4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,13 +2,6 @@ sudo: required
services:
- docker
language: python
-env:
- #- TOX_ENV=py_func_v4
- - TOX_ENV=cli_func_v4
-install:
- - pip install tox
-script:
- - tox -e $TOX_ENV
git:
depth: false
@@ -39,6 +32,13 @@ jobs:
script:
- pip3 install tox
- tox -e cli_func_v4
+ #- stage: test
+ # name: py_func_v4
+ # dist: bionic
+ # python: 3.7
+ # script:
+ # - pip3 install tox
+ # - tox -e py_func_v4
- stage: test
name: docs
dist: bionic
diff --git a/tools/build_test_env.sh b/tools/build_test_env.sh
index 624f879..da2136b 100755
--- a/tools/build_test_env.sh
+++ b/tools/build_test_env.sh
@@ -76,6 +76,7 @@ cleanup() {
trap 'exit 1' HUP INT TERM
}
+try docker pull registry.gitlab.com/python-gitlab/python-gitlab:test >/dev/null
try docker run --name gitlab-test --detach --publish 8080:80 \
--publish 2222:22 registry.gitlab.com/python-gitlab/python-gitlab:test >/dev/null
@@ -99,7 +100,7 @@ if [ -z "$NOVENV" ]; then
. "$VENV"/bin/activate || fatal "failed to activate Python virtual environment"
log "Installing dependencies into virtualenv..."
- try pip install -rrequirements.txt
+ try pip install -r requirements.txt
log "Installing into virtualenv..."
try pip install -e .
@@ -126,7 +127,7 @@ TOKEN=$($(dirname $0)/generate_token.py)
cat > $CONFIG << EOF
[global]
default = local
-timeout = 10
+timeout = 30
[local]
url = http://localhost:8080
@@ -138,6 +139,6 @@ log "Config file content ($CONFIG):"
log <$CONFIG
log "Pausing to give GitLab some time to finish starting up..."
-sleep 60
+sleep 200
log "Test environment initialized."
diff --git a/tools/python_test_v4.py b/tools/python_test_v4.py
index 61fcd43..d65f39f 100644
--- a/tools/python_test_v4.py
+++ b/tools/python_test_v4.py
@@ -843,9 +843,9 @@ for i in range(20, 40):
error_message = e.error_message
break
assert "Retry later" in error_message
-[current_project.delete() for current_project in projects]
settings.throttle_authenticated_api_enabled = False
settings.save()
+[current_project.delete() for current_project in projects]
# project import/export
ex = admin_project.exports.create({})
@@ -871,3 +871,31 @@ while project_import.import_status != "finished":
count += 1
if count == 10:
raise Exception("Project import taking too much time")
+
+# project releases
+release_test_project = gl.projects.create(
+ {"name": "release-test-project", "initialize_with_readme": True}
+)
+release_name = "Demo Release"
+release_tag_name = "v1.2.3"
+release_description = "release notes go here"
+release_test_project.releases.create(
+ {
+ "name": release_name,
+ "tag_name": release_tag_name,
+ "description": release_description,
+ "ref": "master",
+ }
+)
+assert len(release_test_project.releases.list()) == 1
+
+# get single release
+retrieved_project = release_test_project.releases.get(release_tag_name)
+assert retrieved_project.name == release_name
+assert retrieved_project.tag_name == release_tag_name
+assert retrieved_project.description == release_description
+
+# delete release
+release_test_project.releases.delete(release_tag_name)
+assert len(release_test_project.releases.list()) == 0
+release_test_project.delete()
diff --git a/tox.ini b/tox.ini
index ac34542..db28f6e 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,7 +1,7 @@
[tox]
minversion = 1.6
skipsdist = True
-envlist = py36,py35,py34,py27,pep8,black
+envlist = py38,py37,py36,py35,py34,py27,pep8,black
[testenv]
setenv = VIRTUAL_ENV={envdir}