diff options
Diffstat (limited to 'test/MindTest.hs')
-rw-r--r-- | test/MindTest.hs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/test/MindTest.hs b/test/MindTest.hs index 5eb1734..65d5a84 100644 --- a/test/MindTest.hs +++ b/test/MindTest.hs @@ -21,4 +21,40 @@ networkTests :: TestTree networkTests = testGroup "network tests" $ [ testCase "create empty network" $ (createEmptyNetwork 3 2 1) @?= Network 3 [[], []] [[]] + , testCase "output network connection" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Input 0) (Output 0) (negate 1.0)) + @?= (Just $ Network 3 [[], []] [[Edge (Input 0, (negate 1.0))]]) + , testCase "internal network connection" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Internal 0) (Internal 1) (negate 1.0)) + @?= (Just $ Network 3 [[], [Edge (Internal 0, negate 1.0)]] [[]]) + , testCase "internal self-connection" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Internal 0) (Internal 0) (negate 1.0)) + @?= (Just $ Network 3 [[Edge (Internal 0, negate 1.0)], []] [[]]) + , testCase "internal source out of range" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Internal 5) (Internal 0) (negate 1.0)) + @?= Nothing + , testCase "internal sink out of range" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Internal 1) (Internal (negate 1)) (negate 1.0)) + @?= Nothing + , testCase "input source out of range" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Input (negate 1)) (Internal 0) (negate 1.0)) + @?= Nothing + , testCase "input sink" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Input 0) (Input 0) (negate 1.0)) + @?= Nothing + , testCase "output source" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Output 0) (Output 0) (negate 1.0)) + @?= Nothing + , testCase "output sink out of range" $ + let network = Network 3 [[], []] [[]] + in (connectNeurons network (Input 0) (Output 4) (negate 1.0)) + @?= Nothing ] |