Commit 5934683b29f1c12c28d19a0412d612851e82223c

Authored by Anthex
1 parent f77326a3

start adding unit tests

1 __pycache__/ 1 __pycache__/
2 *.pyc 2 *.pyc
3 .vscode/ 3 .vscode/
  4 +.pytest_cache/
@@ -6,22 +6,10 @@ Tf = [] #cells table @@ -6,22 +6,10 @@ Tf = [] #cells table
6 6
7 testSample = RSSVector(-26, -42, -13, -46) 7 testSample = RSSVector(-26, -42, -13, -46)
8 8
9 -#cells Table initialization  
10 -for i in range (0, 3):  
11 - Tf.append([])  
12 - for _ in range (0,3):  
13 - Tf[i].append([])  
14 -  
15 #known fingerprints 9 #known fingerprints
16 -Tf[0][0] = newCell(-38,-27,-54,-13,2,2)  
17 -Tf[0][1] = newCell(-74,-62,-48,-33,2,6)  
18 -Tf[0][2] = newCell(-13,-28,-12,-40,2,10)  
19 -Tf[1][0] = newCell(-34,-27,-38,-41,6,2)  
20 -Tf[1][1] = newCell(-64,-48,-72,-35,6,6)  
21 -Tf[1][2] = newCell(-45,-37,-20,-15,6,10)  
22 -Tf[2][0] = newCell(-17,-50,-44,-33,10,2)  
23 -Tf[2][1] = newCell(-27,-28,-32,-45,10,6)  
24 -Tf[2][2] = newCell(-30,-20,-60,-40,10,10) 10 +Tf = [[newCell(-38,-27,-54,-13,2,2),newCell(-74,-62,-48,-33,2,6),newCell(-13,-28,-12,-40,2,10) ],\
  11 + [newCell(-34,-27,-38,-41,6,2), newCell(-64,-48,-72,-35,6,6), newCell(-45,-37,-20,-15,6,10)], \
  12 + [newCell(-17,-50,-44,-33,10,2), newCell(-27,-28,-32,-45,10,6), newCell(-30,-20,-60,-40,10,10)]]
25 13
26 def main(): 14 def main():
27 #### K neighbours #### 15 #### K neighbours ####
@@ -21,6 +21,12 @@ class Location(): @@ -21,6 +21,12 @@ class Location():
21 self.y = y 21 self.y = y
22 self.z = z 22 self.z = z
23 23
  24 + def __eq__(self, loc2):
  25 + if self.x == loc2.x and self.y == loc2.y and self.z == loc2.z:
  26 + return True
  27 + else:
  28 + return False
  29 +
24 def __mul__(self, multiplier): 30 def __mul__(self, multiplier):
25 returnValue = Location(self.x, self.y, self.z) 31 returnValue = Location(self.x, self.y, self.z)
26 returnValue.x *= multiplier 32 returnValue.x *= multiplier
test_structure.py 0 → 100644
  1 +from structure import *
  2 +
  3 +Tf = [[newCell(-38,-27,-54,-13,2,2),newCell(-74,-62,-48,-33,2,6),newCell(-13,-28,-12,-40,2,10) ],\
  4 + [newCell(-34,-27,-38,-41,6,2), newCell(-64,-48,-72,-35,6,6), newCell(-45,-37,-20,-15,6,10)], \
  5 + [newCell(-17,-50,-44,-33,10,2), newCell(-27,-28,-32,-45,10,6), newCell(-30,-20,-60,-40,10,10)]]
  6 +
  7 +testSample = RSSVector(-26, -42, -13, -46)
  8 +testCells = [Tf[0][2], Tf[2][1], Tf[1][0], Tf[2][0]]
  9 +testDistances = [34, 35, 53, 61]
  10 +
  11 +
  12 +
  13 +def test_KNeighbors():
  14 + assert KNeighbors(Tf, testSample)[0].location.toString() == "(2 ; 10 ; 0)"
  15 + assert KNeighbors(Tf, testSample)[1].location.toString() == "(10 ; 6 ; 0)"
  16 + assert KNeighbors(Tf, testSample)[2].location.toString() == "(6 ; 2 ; 0)"
  17 + assert KNeighbors(Tf, testSample)[3].location.toString() == "(10 ; 2 ; 0)"
  18 +
  19 +def test_resolve_barycenter():
  20 +
  21 + result = resolve_barycenter(testCells, testDistances)
  22 + print(testSample.distances)
  23 + assert round(result.x, 2) == 6.67
  24 + assert round(result.y, 2) == 5.75
  25 +
  26 +def test_Location():
  27 + loc1 = Location(1,2)
  28 + loc2 = Location(3, 4)
  29 + assert loc1 + loc2 == Location(4,6)
  30 + assert loc1 * 2 == Location(2,4)
  31 + loc2 -= Location(1,1)
  32 + assert loc2 == Location(2,3)
  33 + loc1 *= 3
  34 + assert loc1 == Location(3,6)
  35 +
  36 +def test_MarkovModel():
  37 + test_MM = MarkovModel(Tf)
  38 + assert test_MM.previousCell == 0
  39 + test_MM.moveToCellID(3)
  40 + assert test_MM.previousCell == 3
  41 + test_MM.moveToCell(Tf[0][1])
  42 + assert test_MM.previousCell == 2
0 \ No newline at end of file 43 \ No newline at end of file
travis.yml 0 → 100644
  1 +language: python
  2 +python:
  3 + - "3.5"
  4 + - "3.6"
  5 + - "3.7"
  6 +script: pytest
0 \ No newline at end of file 7 \ No newline at end of file