Mercurial > repos > public > sbplib
comparison MapTest.m @ 423:a2cb0d4f4a02 feature/grids
Merge in default.
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Tue, 07 Feb 2017 15:47:51 +0100 |
| parents | effd75b113ba |
| children | a6c5e73ff44e |
comparison
equal
deleted
inserted
replaced
| 218:da058ce66876 | 423:a2cb0d4f4a02 |
|---|---|
| 1 function tests = MatTest() | |
| 2 tests = functiontests(localfunctions); | |
| 3 end | |
| 4 | |
| 5 function kvp = getKeyValuePairs() | |
| 6 kvp = { | |
| 7 {1,3},1; | |
| 8 struct(), [1; 3; 4]; | |
| 9 [1,2; 4 3], struct(); | |
| 10 'Hej', struct('lol', 6); | |
| 11 0, 'Nej'; | |
| 12 }; | |
| 13 end | |
| 14 | |
| 15 function testSetAndGet(testCase) | |
| 16 keyValuePairs = getKeyValuePairs(); | |
| 17 | |
| 18 map = Map(); | |
| 19 | |
| 20 % Insert | |
| 21 for i = 1:length(keyValuePairs) | |
| 22 map(keyValuePairs{i,1}) = keyValuePairs{i,2}; | |
| 23 end | |
| 24 | |
| 25 % Validate output | |
| 26 for i = 1:length(keyValuePairs) | |
| 27 v = map(keyValuePairs{i,1}); | |
| 28 testCase.verifyEqual(v, keyValuePairs{i,2}); | |
| 29 end | |
| 30 end | |
| 31 | |
| 32 function map = exampleMap() | |
| 33 keyValuePairs = getKeyValuePairs(); | |
| 34 | |
| 35 map = Map(); | |
| 36 | |
| 37 % Insert | |
| 38 for i = 1:length(keyValuePairs) | |
| 39 map(keyValuePairs{i,1}) = keyValuePairs{i,2}; | |
| 40 end | |
| 41 end | |
| 42 | |
| 43 function testLength(testCase) | |
| 44 map = Map(); | |
| 45 testCase.verifyEqual(map.length, 0); | |
| 46 | |
| 47 map = exampleMap(); | |
| 48 testCase.verifyEqual(map.length, 5) | |
| 49 end | |
| 50 | |
| 51 | |
| 52 function testIsKey(testCase) | |
| 53 map = exampleMap(); | |
| 54 | |
| 55 keyValuePairs = getKeyValuePairs(); | |
| 56 keys = keyValuePairs(:,1); | |
| 57 | |
| 58 for i = 1:length(keys) | |
| 59 testCase.verifyTrue(map.isKey(keys{i})); | |
| 60 end | |
| 61 | |
| 62 notKeys = { | |
| 63 'hej', | |
| 64 [], | |
| 65 1, | |
| 66 {2,5}, | |
| 67 }; | |
| 68 | |
| 69 for i = 1:length(notKeys) | |
| 70 testCase.verifyFalse(map.isKey(notKeys{i})); | |
| 71 end | |
| 72 end | |
| 73 | |
| 74 | |
| 75 function testRemove(testCase) | |
| 76 map = exampleMap(); | |
| 77 | |
| 78 remove(map, struct()); | |
| 79 | |
| 80 testCase.verifyFalse(map.isKey(struct())); | |
| 81 end | |
| 82 | |
| 83 % function testValues(testCase) | |
| 84 % keyValuePairs = getKeyValuePairs(); | |
| 85 | |
| 86 % map = exampleMap(); | |
| 87 | |
| 88 % testCase.verifyEqual(values(map), keyValuePairs(:,2)'); | |
| 89 % end | |
| 90 | |
| 91 % function testKeys(testCase) | |
| 92 % keyValuePairs = getKeyValuePairs(); | |
| 93 | |
| 94 % map = exampleMap(); | |
| 95 | |
| 96 % testCase.verifyEqual(keys(map), keyValuePairs(:,1)'); | |
| 97 % end |
