Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
17 changes: 10 additions & 7 deletions tests/test_catactivities.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
# import pytest
# import time
import pytest
import time

# from catinabox import catactivities
from catinabox import catactivities


def test__cat_nap__satisfying_nap(mocker):
# mock_sleep = mocker.patch.object(time, "sleep", autospec=True)
assert True
mock_sleep = mocker.patch.object(time, "sleep", autospec=True)
catactivities.cat_nap(301)
mock_sleep.assert_called_with(301)


def test__cat_nap__not_satisfying(mocker):
# mock_sleep = mocker.patch.object(time, "sleep", autospec=True)
assert True
mock_sleep = mocker.patch.object(time, "sleep", autospec=True)
with pytest.raises(catactivities.NapWillNotBeSatisfying):
catactivities.cat_nap(5)
assert mock_sleep.call_count == 0
21 changes: 15 additions & 6 deletions tests/test_catmath.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,25 @@
import pytest
from catinabox import catmath


def test__cat_years_to_hooman_years__middle_age__succeeds():
assert True
# def test__cat_years_to_hooman_years__middle_age__succeeds():
# assert catmath.cat_years_to_hooman_years(5) == 25


def test__cat_years_to_hooman_years__less_than_one_year__succeeds():
assert True
# def test__cat_years_to_hooman_years__less_than_one_year__succeeds():
# assert catmath.cat_years_to_hooman_years(0.5) == 2.5


def test__cat_years_to_hooman_years__0__returns_0():
assert True
# def test__cat_years_to_hooman_years__0__returns_0():
# assert catmath.cat_years_to_hooman_years(0) == 0


@pytest.mark.parametrize(
'age,expected_age',
[(5, 25), (0.5, 2.5), (0, 0)]
)
def test_cat_to_hooman_years(age, expected_age):
assert catmath.cat_years_to_hooman_years(age) == expected_age


# BONUS MATERIAL FOR STEP 2
Expand Down
38 changes: 20 additions & 18 deletions tests/test_cattery.py
Original file line number Diff line number Diff line change
@@ -1,39 +1,41 @@
import pytest

from catinabox import cattery
from catinabox import mccattery


@pytest.fixture(params=[cattery.Cattery, mccattery.McCattery])
def cattery_client(request):
return request.param()

###########################################################################
# add_cats
###########################################################################

def test__add_cats__succeeds():
c = cattery.Cattery()
c.add_cats(["Fluffy", "Snookums"])
assert c.cats == ["Fluffy", "Snookums"]
assert c.num_cats == 2

def test__add_cats__succeeds(cattery_client):
cattery_client.add_cats(["Fluffy", "Snookums"])
assert cattery_client.cats == ["Fluffy", "Snookums"]
assert cattery_client.num_cats == 2


###########################################################################
# remove_cat
###########################################################################

def test__remove_cat__succeeds():
c = cattery.Cattery()
c.add_cats(["Fluffy", "Junior"])
c.remove_cat("Fluffy")
assert c.cats == ["Junior"]
assert c.num_cats == 1
def test__remove_cat__succeeds(cattery_client):
cattery_client.add_cats(["Fluffy", "Junior"])
cattery_client.remove_cat("Fluffy")
assert cattery_client.cats == ["Junior"]
assert cattery_client.num_cats == 1


def test__remove_cat__no_cats__fails():
c = cattery.Cattery()
def test__remove_cat__no_cats__fails(cattery_client):
with pytest.raises(cattery.CatNotFound):
c.remove_cat("Fluffles")
cattery_client.remove_cat("Fluffles")


def test__remove_cat__cat_not_in_cattery__fails():
c = cattery.Cattery()
c.add_cats(["Fluffy"])
def test__remove_cat__cat_not_in_cattery__fails(cattery_client):
cattery_client.add_cats(["Fluffy"])
with pytest.raises(cattery.CatNotFound):
c.remove_cat("Snookums")
cattery_client.remove_cat("Snookums")
44 changes: 14 additions & 30 deletions tests/test_safecatmath.py
Original file line number Diff line number Diff line change
@@ -1,35 +1,19 @@
# import pytest

from catinabox import safecatmath
import pytest


def test__cat_years_to_hooman_years__middle_age__succeeds():
hooman_age = safecatmath.cat_years_to_hooman_years(7)
assert hooman_age == 35


def test__cat_years_to_hooman_years__less_than_one_year__succeeds():
hooman_age = safecatmath.cat_years_to_hooman_years(0.1)
assert hooman_age == 0.5


def test__cat_years_to_hooman_years__0__returns_0():
hooman_age = safecatmath.cat_years_to_hooman_years(0)
assert hooman_age == 0


def test__cat_years_to_hooman_years__less_0__raises():
assert True


def test__cat_years_to_hooman_years__older_than_1000__raises():
assert True


def test__cat_years_to_hooman_years__string__raises():
assert True
@pytest.mark.parametrize(
'age,hooman_age',
[(7, 35), (0.1, 0.5), (0, 0)]
)
def test_cat_years_to_hooman_years__succeeds(age, hooman_age):
assert safecatmath.cat_years_to_hooman_years(age) == hooman_age


def test__cat_years_to_hooman_years__nan__raises():
# hooman_age = float('nan')
assert True
@pytest.mark.parametrize(
'age',
[1001, '100', float('nan')]
)
def test_cat_years_to_hooman_years__raises(age):
with pytest.raises(safecatmath.InvalidAge):
safecatmath.cat_years_to_hooman_years(age)