public
Description: This is a space for projects that maybe did or didn't start at a Dojo session and the participants continued developing.
Homepage: http://groups.google.com/group/dojo_sp
Clone URL: git://github.com/dojosp/participant-s-projects.git
100644 53 lines (46 sloc) 2.239 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
module Main where
 
import Test.HUnit
import Snap
 
main = runTestTT testes
 
testes = TestList [testeCalculaDistancias,testeRaioAtracao,testeDescobreClique]
 
testeCalculaDistancias = TestList[
"Distancia entre um ponto e ele mesmo deveria ser 0" ~:
distancia (Ponto 0 0) (Ponto 0 0 ) ~?= 0.0
,"Distancia entre o ponto 0 0 e 0 1 deveria ser 1" ~:
distancia (Ponto 0 0) (Ponto 0 1 ) ~?= 1.0
,"Distancia entre o ponto 0 0 e 0 2 deveria ser 2" ~:
distancia (Ponto 0 0) (Ponto 0 2 ) ~?= 2.0
,"Distancia entre o ponto 0 0 e 1 0 deveria ser 1" ~:
distancia (Ponto 0 0) (Ponto 1 0 ) ~?= 1.0
,"Distancia entre o ponto 1 0 e 1 1 deveria ser 1" ~:
distancia (Ponto 1 0) (Ponto 1 1 ) ~?= 1.0
,"Distancia entre o ponto 0 3 e 4 0 deveria ser 5" ~:
distancia (Ponto 0 3) (Ponto 4 0 ) ~?= 5
]
 
testeRaioAtracao = TestList[
"Ponto 0 0 deveria pertencer a regiao do ponto 0 0 raio 1"~:
pertenceARegiao (Ponto 0 0) (PontoAtrator (Ponto 0 0) 1)~?= True
,"Ponto 1 0 deveria pertencer a regiao do ponto 0 0 raio 1"~:
pertenceARegiao (Ponto 1 0) (PontoAtrator (Ponto 0 0) 1)~?= True
,"Ponto 2 0 nao deveria pertencer a regiao do ponto 0 0 raio 1"~:
pertenceARegiao (Ponto 2 0) (PontoAtrator (Ponto 0 0) 1)~?= False
    ,"Ponto 2 0 deveria pertencer a regiao do ponto 0 0 raio 2"~:
pertenceARegiao (Ponto 2 0) (PontoAtrator (Ponto 0 0) 2)~?= True
,"Ponto 3 0 nao deveria pertencer a regiao do ponto 0 0 raio 2"~:
pertenceARegiao (Ponto 3 0) (PontoAtrator (Ponto 0 0) 2)~?= False
,"Ponto 0 3 nao deveria pertencer a regiao do ponto 0 0 raio 2"~:
pertenceARegiao (Ponto 0 3) (PontoAtrator (Ponto 0 0) 2)~?= False
,"Ponto 2 3 deveria pertencer a regiao do ponto 2 2 raio 2"~:
pertenceARegiao (Ponto 2 3) (PontoAtrator (Ponto 2 2) 2)~?= True
,"Ponto -2 -2 nao deveria pertencer a regiao do ponto 0 0 raio 1"~:
pertenceARegiao (Ponto (-2) (-2)) (PontoAtrator (Ponto 0 0) 1)~?= False
]
 
testeDescobreClique = TestList
[
"Clique sem pontos atratores eh o proprio ponto" ~:
clique (Ponto 0 0) [] ~?= (Ponto 0 0)
,"Clique sem pontos atratores eh o proprio outro ponto" ~:
clique (Ponto 1 1) [] ~?= (Ponto 1 1)
,"Clique com um ponto atrator perto eh o proprio ponto" ~:
clique (Ponto 1 1) [(PontoAtrator (Ponto 0 1) 1)] ~?= (Ponto 0 1)
]