Skip to content

Commit

Permalink
test: create unit tests for experience repository (#11)
Browse files Browse the repository at this point in the history
  • Loading branch information
DEENUU1 committed Feb 26, 2024
1 parent a20e115 commit 809672d
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 1 deletion.
7 changes: 6 additions & 1 deletion tests/test_offer/test_employment_type_repository.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
import pytest
from rest_framework.exceptions import NotFound
from offer.models import EmploymentType

from offer.repository.employment_type_repository import EmploymentTypeRepository


@pytest.fixture
def repository():
return EmploymentTypeRepository()


@pytest.mark.django_db
def test_create_employment_type(repository):
employment_type_data = {
Expand All @@ -16,6 +18,7 @@ def test_create_employment_type(repository):
assert employment_type.id is not None
assert employment_type.name == "Full-Time"


@pytest.mark.django_db
def test_get_employment_type_by_id(repository):
employment_type_data = {
Expand All @@ -27,6 +30,7 @@ def test_get_employment_type_by_id(repository):
assert retrieved_employment_type is not None
assert retrieved_employment_type.name == "Contract"


@pytest.mark.django_db
def test_update_employment_type(repository):
employment_type_data = {
Expand All @@ -40,6 +44,7 @@ def test_update_employment_type(repository):
assert updated_employment_type is not None
assert updated_employment_type.name == "Fixed-Term"


@pytest.mark.django_db
def test_delete_employment_type(repository):
employment_type_data = {
Expand Down
54 changes: 54 additions & 0 deletions tests/test_offer/test_experience_repository.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
import pytest
from rest_framework.exceptions import NotFound
from offer.models import Experience
from offer.repository.experience_repository import ExperienceRepository

@pytest.fixture
def repository():
return ExperienceRepository()

@pytest.mark.django_db
def test_create_experience(repository):
experience_data = {
"name": "Entry Level",
}
experience = repository.create(experience_data)
assert experience.id is not None
assert experience.name == "Entry Level"


@pytest.mark.django_db
def test_get_experience_by_id(repository):
experience_data = {
"name": "Senior",
}
created_experience = repository.create(experience_data)

retrieved_experience = repository.get_by_id(created_experience.id)
assert retrieved_experience is not None
assert retrieved_experience.name == "Senior"

@pytest.mark.django_db
def test_update_experience(repository):
experience_data = {
"name": "Junior",
}
created_experience = repository.create(experience_data)

updated_data = {"name": "Associate"}
updated_experience = repository.update(created_experience.id, updated_data)

assert updated_experience is not None
assert updated_experience.name == "Associate"

@pytest.mark.django_db
def test_delete_experience(repository):
experience_data = {
"name": "Intern",
}
created_experience = repository.create(experience_data)

repository.delete(created_experience.id)

with pytest.raises(NotFound):
repository.get_by_id(created_experience.id)

0 comments on commit 809672d

Please sign in to comment.