Mercurial > repos > public > sbplib
diff +multiblock/DiffOpTest.m @ 201:38f203f00f3a feature/grids
Exeendend tests of multiblock.DiffOp.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 14 Jun 2016 15:07:34 +0200 |
parents | 6054dcd3c8a9 |
children |
line wrap: on
line diff
--- a/+multiblock/DiffOpTest.m Mon Jun 13 16:50:16 2016 +0200 +++ b/+multiblock/DiffOpTest.m Tue Jun 14 15:07:34 2016 +0200 @@ -3,18 +3,57 @@ end function testCreation(testCase) - g = multiblock.Grid({},{}); - doHand = @(grid,order)[]; - order = 0; - do = multiblock.DiffOp(doHand, g, order); + do = newMultiblockOp(); end -function testMissing(testCase) +function testSplitOp(testCase) + testCase.verifyFail(); +end + +function testBoundary_condition(testCase) + testCase.verifyFail(); +end + +function testInterface(testCase) testCase.verifyFail(); end +function testSize(testCase) + mbDo = newMultiblockOp(); + testCase.verifyEqual(mbDo.size(), 15) +end -% function do = mockDiffOp() -% do.H = 1; -% do.D = 1; -% end \ No newline at end of file + +function do = mockDiffOp(size, bc, interface) + do.H = 1; + do.D = 1; + + do.size = size; + do.boundary_condition = bc; + do.interface = interface; +end + + +function do = newMultiblockOp() + grids = { + grid.Cartesian([0 1 2], [3 4 5]); + grid.Cartesian([1 2 3], [10 20]); + }; + + conn = cell(2,2); + conn{1, 2} = {'s','n'}; + + mbGrid = multiblock.Grid(grids, conn); + + function [c, p] = boundary_condition(~,~,~,~) + c = 1; p = 1; + end + + function [c, p] = interface(~,~,~,~) + c = 1; p = 1; + end + + doHand = @(grid,~)mockDiffOp(@(~)prod(grid.size()), @boundary_condition, @interface); + + do = multiblock.DiffOp(doHand, mbGrid, 0); +end \ No newline at end of file