Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 1c6de72

Browse files
TheSPARTAagarwl
authored andcommitted
Added some unittests in test_learning.py
1 parent ca893d7 commit 1c6de72

File tree

1 file changed

+34
-2
lines changed

1 file changed

+34
-2
lines changed

tests/test_learning.py

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
import pytest
2-
from learning import parse_csv, weighted_mode, weighted_replicate, DataSet, \
3-
PluralityLearner, NaiveBayesLearner, NearestNeighborLearner
2+
import math
43
from utils import DataFile
4+
from learning import (
5+
parse_csv, weighted_mode, weighted_replicate, DataSet,
6+
PluralityLearner, NaiveBayesLearner, NearestNeighborLearner,
7+
rms_error, manhattan_distance, mean_boolean_error, mean_error
8+
)
59

610

711
def test_parse_csv():
@@ -33,3 +37,31 @@ def test_k_nearest_neighbors():
3337

3438
kNN = NearestNeighborLearner(iris,k=3)
3539
assert kNN([5,3,1,0.1]) == "setosa"
40+
41+
def test_rms_error():
42+
assert rms_error([2,2], [2,2]) == 0
43+
assert rms_error((0,0), (0,1)) == math.sqrt(0.5)
44+
assert rms_error((1,0), (0,1)) == 1
45+
assert rms_error((0,0), (0,-1)) == math.sqrt(0.5)
46+
assert rms_error((0,0.5), (0,-0.5)) == math.sqrt(0.5)
47+
48+
def test_manhattan_distance():
49+
assert manhattan_distance([2,2], [2,2]) == 0
50+
assert manhattan_distance([0,0], [0,1]) == 1
51+
assert manhattan_distance([1,0], [0,1]) == 2
52+
assert manhattan_distance([0,0], [0,-1]) == 1
53+
assert manhattan_distance([0,0.5], [0,-0.5]) == 1
54+
55+
def test_mean_boolean_error():
56+
assert mean_boolean_error([1,1], [0,0]) == 1
57+
assert mean_boolean_error([0,1], [1,0]) == 1
58+
assert mean_boolean_error([1,1], [0,1]) == 0.5
59+
assert mean_boolean_error([0,0], [0,0]) == 0
60+
assert mean_boolean_error([1,1], [1,1]) == 0
61+
62+
def test_mean_error():
63+
assert mean_error([2,2], [2,2]) == 0
64+
assert mean_error([0,0], [0,1]) == 0.5
65+
assert mean_error([1,0], [0,1]) == 1
66+
assert mean_error([0,0], [0,-1]) == 0.5
67+
assert mean_error([0,0.5], [0,-0.5]) == 0.5

0 commit comments

Comments
 (0)