Skip to content

Commit

Permalink
Merge branch 'master' of github.com:ExCiteS/geokey-sapelli
Browse files Browse the repository at this point in the history
  • Loading branch information
mstevens83 committed Dec 9, 2015
2 parents d9962c4 + 15513a1 commit 56ded15
Show file tree
Hide file tree
Showing 5 changed files with 54 additions and 33 deletions.
6 changes: 3 additions & 3 deletions geokey_sapelli/tests/model_factories.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

from django.core.files.base import ContentFile

from geokey.projects.tests.model_factories import ProjectF
from geokey.projects.tests.model_factories import ProjectFactory
from geokey.categories.tests.model_factories import (
CategoryFactory,
FieldFactory,
Expand Down Expand Up @@ -37,7 +37,7 @@ class SapelliProjectFactory(factory.django.DjangoModelFactory):
class Meta:
model = SapelliProject

project = factory.SubFactory(ProjectF)
project = factory.SubFactory(ProjectFactory)
sapelli_id = factory.Sequence(lambda n: n)
sapelli_fingerprint = factory.Sequence(lambda n: n)

Expand Down Expand Up @@ -79,7 +79,7 @@ class Meta:


def create_full_project(user):
geokey_project = ProjectF.create(
geokey_project = ProjectFactory.create(
add_admins=[user],
**{'name': 'Mapping Cultures'}
)
Expand Down
6 changes: 3 additions & 3 deletions geokey_sapelli/tests/test_helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from django.core.files import File
from django.conf import settings

from geokey.users.tests.model_factories import UserF
from geokey.users.tests.model_factories import UserFactory
from geokey.categories.tests.model_factories import CategoryFactory
from geokey.categories.models import Category, NumericField, DateTimeField

Expand All @@ -17,7 +17,7 @@
from ..helper.project_mapper import create_project, create_implicit_fields


class TestSapelliLoader(TestCase):
class TestSapelliLoader(TestCase):
def test_extract_sap(self):
path = normpath(join(dirname(abspath(__file__)), 'files/Horniman.sap'))
file = File(open(path, 'rb'))
Expand Down Expand Up @@ -382,7 +382,7 @@ def test_create_project(self):
}
directory = normpath(join(dirname(abspath(__file__)), 'files'))

geokey_project = create_project(sapelli_project_info, UserF.create(), directory)
geokey_project = create_project(sapelli_project_info, UserFactory.create(), directory)
self.assertEqual(geokey_project.name, 'Mapping Cultures')
self.assertEqual(geokey_project.sapelli_project.sapelli_id, 1111)
self.assertEqual(geokey_project.sapelli_project.sapelli_fingerprint, -1001003931)
Expand Down
46 changes: 30 additions & 16 deletions geokey_sapelli/tests/test_manager.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from django.test import TestCase

from geokey.users.tests.model_factories import UserF
from geokey.projects.tests.model_factories import ProjectF
from geokey.users.tests.model_factories import UserFactory
from geokey.projects.tests.model_factories import ProjectFactory

from .model_factories import SapelliProjectFactory

Expand All @@ -10,58 +10,72 @@

class SapelliManagerTest(TestCase):
def test_get_list_for_administration(self):
user = UserF.create()
project = ProjectF.create(add_admins=[user])
user = UserFactory.create()
project = ProjectFactory.create(add_admins=[user])

admin_sap_project = SapelliProjectFactory.create(**{'project': project})
admin_sap_project = SapelliProjectFactory.create(
**{'project': project}
)
SapelliProjectFactory.create_batch(2)

sap_projects = SapelliProject.objects.get_list_for_administration(user)
self.assertEqual(1, sap_projects.count())
self.assertEqual(sap_projects[0], admin_sap_project)

def test_get_list_for_contribution(self):
user = UserF.create()
project = ProjectF.create(add_contributors=[user])
user = UserFactory.create()
project = ProjectFactory.create(add_contributors=[user])

contrib_sap_project = SapelliProjectFactory.create(**{'project': project})
contrib_sap_project = SapelliProjectFactory.create(
**{'project': project}
)
SapelliProjectFactory.create_batch(2)

sap_projects = SapelliProject.objects.get_list_for_contribution(user)
self.assertEqual(1, len(sap_projects))
self.assertEqual(sap_projects[0], contrib_sap_project)

def test_get_single_for_administration(self):
user = UserF.create()
project = ProjectF.create(add_admins=[user])
user = UserFactory.create()
project = ProjectFactory.create(add_admins=[user])

admin_sap_project = SapelliProjectFactory.create(**{'project': project})
admin_sap_project = SapelliProjectFactory.create(
**{'project': project}
)
other_sap_project = SapelliProjectFactory.create()

ref = SapelliProject.objects.get_single_for_administration(
user, admin_sap_project.project_id)
self.assertEqual(ref, admin_sap_project)

try:
SapelliProject.objects.get_single_for_administration(user, other_sap_project.project_id)
SapelliProject.objects.get_single_for_administration(
user,
other_sap_project.project_id
)
except SapelliProject.DoesNotExist:
pass
else:
self.fail('SapelliProject.DoesNotExist not raised')

def test_get_single_for_contribution(self):
user = UserF.create()
project = ProjectF.create(add_contributors=[user])
user = UserFactory.create()
project = ProjectFactory.create(add_contributors=[user])

contrib_sap_project = SapelliProjectFactory.create(**{'project': project})
contrib_sap_project = SapelliProjectFactory.create(
**{'project': project}
)
other_sap_project = SapelliProjectFactory.create()

ref = SapelliProject.objects.get_single_for_contribution(
user, contrib_sap_project.project_id)
self.assertEqual(ref, contrib_sap_project)

try:
SapelliProject.objects.get_single_for_contribution(user, other_sap_project.project_id)
SapelliProject.objects.get_single_for_contribution(
user,
other_sap_project.project_id
)
except SapelliProject.DoesNotExist:
pass
else:
Expand Down
16 changes: 12 additions & 4 deletions geokey_sapelli/tests/test_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,37 @@
from django.core.files import File
from django.test import TestCase

from geokey.users.tests.model_factories import UserF
from geokey.users.tests.model_factories import UserFactory

from .model_factories import create_full_project


class ProjectTest(TestCase):
def test_import_from_csv(self):
user = UserF.create()
user = UserFactory.create()
sapelli_project = create_full_project(user)

form = sapelli_project.forms.all()[0]

path = normpath(join(dirname(abspath(__file__)), 'files/Horniman.csv'))
file = File(open(path, 'rb'))
imported, updated, ignored = sapelli_project.import_from_csv(user, form.category_id, file)
imported, updated, ignored = sapelli_project.import_from_csv(
user,
form.category_id,
file
)
self.assertEqual(imported, 4)
self.assertEqual(updated, 0)
self.assertEqual(ignored, 0)
self.assertEqual(sapelli_project.project.observations.count(), 4)

path = normpath(join(dirname(abspath(__file__)), 'files/updated.csv'))
file = File(open(path, 'rb'))
imported, updated, ignored = sapelli_project.import_from_csv(user, form.category_id, file)
imported, updated, ignored = sapelli_project.import_from_csv(
user,
form.category_id,
file
)
self.assertEqual(imported, 1)
self.assertEqual(updated, 2)
self.assertEqual(ignored, 1)
Expand Down
13 changes: 6 additions & 7 deletions geokey_sapelli/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,9 @@

from django.test.client import RequestFactory

from geokey.applications.tests.model_factories import ApplicationFactory
from geokey.users.tests.model_factories import UserF
from geokey.projects.models import Project
from geokey import version
from geokey.applications.tests.model_factories import ApplicationFactory
from geokey.users.tests.model_factories import UserFactory

from .model_factories import SapelliProjectFactory, create_full_project

Expand Down Expand Up @@ -102,7 +101,7 @@ def test_get_with_anonymous(self):
self.assertEqual(response['location'], '/admin/account/login/?next=')

def test_get_with_user(self):
user = UserF.create()
user = UserFactory.create()
self.request.user = user

response = self.view(self.request).render()
Expand Down Expand Up @@ -143,7 +142,7 @@ def test_post_with_anonymous(self):
# def test_post_with_user(self):
# path = normpath(join(dirname(abspath(__file__)), 'files/Horniman.sap'))
# file = File(open(path, 'rb'))
# user = UserF.create()
# user = UserFactory.create()

# self.request.user = user
# self.request.method = 'POST'
Expand All @@ -166,7 +165,7 @@ def test_post_with_anonymous(self):

class DataCSVUploadTest(TestCase):
def setUp(self):
self.user = UserF.create()
self.user = UserFactory.create()
self.view = DataCSVUpload.as_view()
self.request = HttpRequest()
self.request.method = 'GET'
Expand Down Expand Up @@ -300,7 +299,7 @@ def test_url(self):
self.assertEqual(resolved.func.func_name, LoginAPI.__name__)

def test_post(self):
user = UserF.create()
user = UserFactory.create()
user.set_password('123456')
user.save()

Expand Down

0 comments on commit 56ded15

Please sign in to comment.