Mercurial > repos > public > sbplib
changeset 484:da7df0c9af05 feature/sublassable_cellarray
Implement tests for subscript assignment
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 02 Aug 2017 15:23:57 +0200 |
parents | 025f084187d1 |
children | 77460b6babe1 595a29007c87 |
files | CellTest.m |
diffstat | 1 files changed, 84 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/CellTest.m Wed Aug 02 14:49:56 2017 +0200 +++ b/CellTest.m Wed Aug 02 15:23:57 2017 +0200 @@ -53,8 +53,90 @@ testCase.verifyEqual(result, {3, 1}); end -function testSubAssignment(testCase) - testCase.verifyFail(); +function testSubAssignmentRound(testCase) + cases = { + % { + % lArray, + % index, + % rhs, + % expectedResult + % }, + { + {}, + 1, + {'a'}, + {'a'}, + }, + { + {1}, + 1, + {'a'}, + {'a'}, + }, + { + {1,2,3}, + 2, + {'a'}, + {1,'a',3}, + }, + { + {1,2,3}, + 2, + [], + {1,3}, + }, + }; + + for i = 1:length(cases) + lArray = Cell(cases{i}{1}); + index = cases{i}{2}; + rhs = cases{i}{3}; + expectedResult = cases{i}{4}; + + lArray(index) = rhs; + + testCase.verifyEqual(lArray.data, expectedResult) + end +end + +function testSubAssignmentCurly(testCase) + cases = { + % { + % lArray, + % index, + % rhs, + % expectedResult + % }, + { + {}, + 1, + 'a', + {'a'}, + }, + { + {1}, + 1, + 'a', + {'a'}, + }, + { + {1,2,3}, + 2, + 'a', + {1,'a',3}, + }, + }; + + for i = 1:length(cases) + lArray = Cell(cases{i}{1}); + index = cases{i}{2}; + rhs = cases{i}{3}; + expectedResult = cases{i}{4}; + + lArray{index} = rhs; + + testCase.verifyEqual(lArray.data, expectedResult) + end end function testIndexreferenceRound(testCase)