Skip to content

Commit 262b222

Browse files
authored
Merge pull request #836 from python-gitlab/test/project-releases
test: add project releases test
2 parents 0b0a60f + 3b523f4 commit 262b222

File tree

4 files changed

+41
-12
lines changed

4 files changed

+41
-12
lines changed

.travis.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,6 @@ sudo: required
22
services:
33
- docker
44
language: python
5-
env:
6-
#- TOX_ENV=py_func_v4
7-
- TOX_ENV=cli_func_v4
8-
install:
9-
- pip install tox
10-
script:
11-
- tox -e $TOX_ENV
125

136
git:
147
depth: false
@@ -39,6 +32,13 @@ jobs:
3932
script:
4033
- pip3 install tox
4134
- tox -e cli_func_v4
35+
#- stage: test
36+
# name: py_func_v4
37+
# dist: bionic
38+
# python: 3.7
39+
# script:
40+
# - pip3 install tox
41+
# - tox -e py_func_v4
4242
- stage: test
4343
name: docs
4444
dist: bionic

tools/build_test_env.sh

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ cleanup() {
7676
trap 'exit 1' HUP INT TERM
7777
}
7878

79+
try docker pull registry.gitlab.com/python-gitlab/python-gitlab:test >/dev/null
7980
try docker run --name gitlab-test --detach --publish 8080:80 \
8081
--publish 2222:22 registry.gitlab.com/python-gitlab/python-gitlab:test >/dev/null
8182

@@ -99,7 +100,7 @@ if [ -z "$NOVENV" ]; then
99100
. "$VENV"/bin/activate || fatal "failed to activate Python virtual environment"
100101

101102
log "Installing dependencies into virtualenv..."
102-
try pip install -rrequirements.txt
103+
try pip install -r requirements.txt
103104

104105
log "Installing into virtualenv..."
105106
try pip install -e .
@@ -126,7 +127,7 @@ TOKEN=$($(dirname $0)/generate_token.py)
126127
cat > $CONFIG << EOF
127128
[global]
128129
default = local
129-
timeout = 10
130+
timeout = 30
130131
131132
[local]
132133
url = http://localhost:8080
@@ -138,6 +139,6 @@ log "Config file content ($CONFIG):"
138139
log <$CONFIG
139140

140141
log "Pausing to give GitLab some time to finish starting up..."
141-
sleep 60
142+
sleep 200
142143

143144
log "Test environment initialized."

tools/python_test_v4.py

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -843,9 +843,9 @@
843843
error_message = e.error_message
844844
break
845845
assert "Retry later" in error_message
846-
[current_project.delete() for current_project in projects]
847846
settings.throttle_authenticated_api_enabled = False
848847
settings.save()
848+
[current_project.delete() for current_project in projects]
849849

850850
# project import/export
851851
ex = admin_project.exports.create({})
@@ -871,3 +871,31 @@
871871
count += 1
872872
if count == 10:
873873
raise Exception("Project import taking too much time")
874+
875+
# project releases
876+
release_test_project = gl.projects.create(
877+
{"name": "release-test-project", "initialize_with_readme": True}
878+
)
879+
release_name = "Demo Release"
880+
release_tag_name = "v1.2.3"
881+
release_description = "release notes go here"
882+
release_test_project.releases.create(
883+
{
884+
"name": release_name,
885+
"tag_name": release_tag_name,
886+
"description": release_description,
887+
"ref": "master",
888+
}
889+
)
890+
assert len(release_test_project.releases.list()) == 1
891+
892+
# get single release
893+
retrieved_project = release_test_project.releases.get(release_tag_name)
894+
assert retrieved_project.name == release_name
895+
assert retrieved_project.tag_name == release_tag_name
896+
assert retrieved_project.description == release_description
897+
898+
# delete release
899+
release_test_project.releases.delete(release_tag_name)
900+
assert len(release_test_project.releases.list()) == 0
901+
release_test_project.delete()

tox.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[tox]
22
minversion = 1.6
33
skipsdist = True
4-
envlist = py36,py35,py34,py27,pep8,black
4+
envlist = py38,py37,py36,py35,py34,py27,pep8,black
55

66
[testenv]
77
setenv = VIRTUAL_ENV={envdir}

0 commit comments

Comments
 (0)