disable tests
This commit is contained in:
		
							
								
								
									
										46
									
								
								aircox/tests/_test_permissions.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								aircox/tests/_test_permissions.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,46 @@
 | 
				
			|||||||
 | 
					import pytest
 | 
				
			||||||
 | 
					from django.contrib.auth.models import User, Group
 | 
				
			||||||
 | 
					from django.urls import reverse
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.mark.django_db()
 | 
				
			||||||
 | 
					def test_no_admin(user, client):
 | 
				
			||||||
 | 
					    client.force_login(user)
 | 
				
			||||||
 | 
					    response = client.get("/admin/")
 | 
				
			||||||
 | 
					    assert response.status_code != 200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.mark.django_db()
 | 
				
			||||||
 | 
					def test_user_cannot_change_program_or_episode(user, client, program):
 | 
				
			||||||
 | 
					    assert not user.has_perm("aircox.change_program")
 | 
				
			||||||
 | 
					    assert not user.has_perm("aircox.change_episode")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.mark.django_db()
 | 
				
			||||||
 | 
					def test_group_can_change_program(user, client, program):
 | 
				
			||||||
 | 
					    assert program.editors in Group.objects.all()
 | 
				
			||||||
 | 
					    assert not user.has_perm("aircox.%s" % program.change_permission_codename)
 | 
				
			||||||
 | 
					    user.groups.add(program.editors)
 | 
				
			||||||
 | 
					    user = User.objects.get(pk=user.pk)  # reload user in order to have permissions set
 | 
				
			||||||
 | 
					    assert program.editors in user.groups.all()
 | 
				
			||||||
 | 
					    assert user.has_perm("aircox.%s" % program.change_permission_codename)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.mark.django_db()
 | 
				
			||||||
 | 
					def test_group_change_program(user, client, program):
 | 
				
			||||||
 | 
					    client.force_login(user)
 | 
				
			||||||
 | 
					    response = client.get(reverse("program-edit", kwargs={"pk": program.pk}))
 | 
				
			||||||
 | 
					    assert response.status_code == 403
 | 
				
			||||||
 | 
					    user.groups.add(program.editors)
 | 
				
			||||||
 | 
					    response = client.get(reverse("program-edit", kwargs={"pk": program.pk}))
 | 
				
			||||||
 | 
					    assert response.status_code == 200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@pytest.mark.django_db()
 | 
				
			||||||
 | 
					def test_group_change_episode(user, client, program, episode):
 | 
				
			||||||
 | 
					    client.force_login(user)
 | 
				
			||||||
 | 
					    response = client.get(reverse("episode-edit", kwargs={"pk": episode.pk}))
 | 
				
			||||||
 | 
					    assert response.status_code == 403
 | 
				
			||||||
 | 
					    user.groups.add(program.editors)
 | 
				
			||||||
 | 
					    response = client.get(reverse("episode-edit", kwargs={"pk": episode.pk}))
 | 
				
			||||||
 | 
					    assert response.status_code == 200
 | 
				
			||||||
@ -1,46 +0,0 @@
 | 
				
			|||||||
# import pytest
 | 
					 | 
				
			||||||
# from django.contrib.auth.models import User, Group
 | 
					 | 
				
			||||||
# from django.urls import reverse
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# @pytest.mark.django_db()
 | 
					 | 
				
			||||||
# def test_no_admin(user, client):
 | 
					 | 
				
			||||||
#     client.force_login(user)
 | 
					 | 
				
			||||||
#     response = client.get("/admin/")
 | 
					 | 
				
			||||||
#     assert response.status_code != 200
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# @pytest.mark.django_db()
 | 
					 | 
				
			||||||
# def test_user_cannot_change_program_or_episode(user, client, program):
 | 
					 | 
				
			||||||
#     assert not user.has_perm("aircox.change_program")
 | 
					 | 
				
			||||||
#     assert not user.has_perm("aircox.change_episode")
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# @pytest.mark.django_db()
 | 
					 | 
				
			||||||
# def test_group_can_change_program(user, client, program):
 | 
					 | 
				
			||||||
#     assert program.editors in Group.objects.all()
 | 
					 | 
				
			||||||
#     assert not user.has_perm("aircox.%s" % program.change_permission_codename)
 | 
					 | 
				
			||||||
#     user.groups.add(program.editors)
 | 
					 | 
				
			||||||
#     user = User.objects.get(pk=user.pk)  # reload user in order to have permissions set
 | 
					 | 
				
			||||||
#     assert program.editors in user.groups.all()
 | 
					 | 
				
			||||||
#     assert user.has_perm("aircox.%s" % program.change_permission_codename)
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# @pytest.mark.django_db()
 | 
					 | 
				
			||||||
# def test_group_change_program(user, client, program):
 | 
					 | 
				
			||||||
#     client.force_login(user)
 | 
					 | 
				
			||||||
#     response = client.get(reverse("program-edit", kwargs={"pk": program.pk}))
 | 
					 | 
				
			||||||
#     assert response.status_code == 403
 | 
					 | 
				
			||||||
#     user.groups.add(program.editors)
 | 
					 | 
				
			||||||
#     response = client.get(reverse("program-edit", kwargs={"pk": program.pk}))
 | 
					 | 
				
			||||||
#     assert response.status_code == 200
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# @pytest.mark.django_db()
 | 
					 | 
				
			||||||
# def test_group_change_episode(user, client, program, episode):
 | 
					 | 
				
			||||||
#     client.force_login(user)
 | 
					 | 
				
			||||||
#     response = client.get(reverse("episode-edit", kwargs={"pk": episode.pk}))
 | 
					 | 
				
			||||||
#     assert response.status_code == 403
 | 
					 | 
				
			||||||
#     user.groups.add(program.editors)
 | 
					 | 
				
			||||||
#     response = client.get(reverse("episode-edit", kwargs={"pk": episode.pk}))
 | 
					 | 
				
			||||||
#     assert response.status_code == 200
 | 
					 | 
				
			||||||
@ -1,51 +0,0 @@
 | 
				
			|||||||
# FIXME: this should be cleaner
 | 
					 | 
				
			||||||
from itertools import chain
 | 
					 | 
				
			||||||
import json
 | 
					 | 
				
			||||||
import pytest
 | 
					 | 
				
			||||||
from django.urls import reverse
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@pytest.mark.django_db()
 | 
					 | 
				
			||||||
def test_edit_program(user, client, program):
 | 
					 | 
				
			||||||
    client.force_login(user)
 | 
					 | 
				
			||||||
    response = client.get(reverse("program-detail", kwargs={"slug": program.slug}))
 | 
					 | 
				
			||||||
    assert response.status_code == 200
 | 
					 | 
				
			||||||
    assert "🖉 ".encode() not in response.content
 | 
					 | 
				
			||||||
    user.groups.add(program.editors)
 | 
					 | 
				
			||||||
    response = client.get(reverse("program-detail", kwargs={"slug": program.slug}))
 | 
					 | 
				
			||||||
    assert "🖉 ".encode() in response.content
 | 
					 | 
				
			||||||
    assert b"foobar" not in response.content
 | 
					 | 
				
			||||||
    response = client.post(reverse("program-edit", kwargs={"pk": program.pk}), {"content": "foobar"})
 | 
					 | 
				
			||||||
    response = client.get(reverse("program-detail", kwargs={"slug": program.slug}))
 | 
					 | 
				
			||||||
    assert b"foobar" in response.content
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@pytest.mark.django_db()
 | 
					 | 
				
			||||||
def test_edit_tracklist(user, client, program, episode, tracks):
 | 
					 | 
				
			||||||
    user.groups.add(program.editors)
 | 
					 | 
				
			||||||
    client.force_login(user)
 | 
					 | 
				
			||||||
    episode.status = 0x10  # published
 | 
					 | 
				
			||||||
    episode.save()
 | 
					 | 
				
			||||||
    r = client.get(reverse("program-detail", kwargs={"slug": episode.program.slug}))
 | 
					 | 
				
			||||||
    assert r.status_code == 200
 | 
					 | 
				
			||||||
    r = client.get(reverse("episode-detail", kwargs={"slug": episode.slug}))
 | 
					 | 
				
			||||||
    assert r.status_code == 200
 | 
					 | 
				
			||||||
    r2 = client.get(reverse("episode-edit", kwargs={"pk": episode.pk}))
 | 
					 | 
				
			||||||
    assert r2.status_code == 200
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    tracklist = [t.id for t in episode.track_set.all().order_by("position")]
 | 
					 | 
				
			||||||
    tracklist_details_reversed = [(t.id, t.artist, t.title) for t in episode.track_set.all().order_by("-position")]
 | 
					 | 
				
			||||||
    tracklist_details_reversed = list(chain(*tracklist_details_reversed))
 | 
					 | 
				
			||||||
    data = """{{"website": [""], "content": ["foobar"], "new_podcast": [""], "form-TOTAL_FORMS": ["3"],
 | 
					 | 
				
			||||||
    "form-INITIAL_FORMS": ["3"], "form-MIN_NUM_FORMS": ["0"], "form-MAX_NUM_FORMS": ["1000"], "form-0-position": ["0"],
 | 
					 | 
				
			||||||
    "form-0-id": ["{}"], "form-0-": ["", "", "", "", "", ""], "form-0-artist": ["{}"], "form-0-title": ["{}"],
 | 
					 | 
				
			||||||
    "form-0-tags": [""], "form-0-album": [""], "form-0-year": [""], "form-1-position": ["1"], "form-1-id": ["{}"],
 | 
					 | 
				
			||||||
    "form-1-": ["", "", "", "", "", ""], "form-1-artist": ["{}"], "form-1-title": ["{}"], "form-1-tags": [""],
 | 
					 | 
				
			||||||
    "form-1-album": [""], "form-1-year": [""], "form-2-position": ["2"], "form-2-id": ["{}"], "form-2-": ["", "", "",
 | 
					 | 
				
			||||||
    "", "", ""], "form-2-artist": ["{}"], "form-2-title": ["{}"], "form-2-tags": [""], "form-2-album": [""],
 | 
					 | 
				
			||||||
    "form-2-year": [""]}}""".format(
 | 
					 | 
				
			||||||
        *tracklist_details_reversed
 | 
					 | 
				
			||||||
    )
 | 
					 | 
				
			||||||
    r = client.post(reverse("episode-edit", kwargs={"pk": episode.pk}), json.loads(data), follow=True)
 | 
					 | 
				
			||||||
    assert r.status_code == 200
 | 
					 | 
				
			||||||
    assert set(episode.track_set.all().values_list("id", flat=True)) == set(tracklist)
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user