function success = Files_Test_LineTerminators success = true; % create some input a = sprintf('1\n2'); % unix/linux/OSX b = sprintf('1\r\n2'); % windows c = sprintf('1\r2'); % macintosh (OS9 or earlier) d = sprintf('1\r\n\r2'); % windows, followed by mac os9 try % test: ReplaceLineTerminators success = tester(ReplaceLineTerminators(a,'unix'),sprintf('1\n2'),'ReplaceLineTerminators(a,''unix'')') && success; success = tester(ReplaceLineTerminators(a,'windows'),sprintf('1\r\n2'),'ReplaceLineTerminators(a,''windows'')') && success; success = tester(ReplaceLineTerminators(b,'unix'),sprintf('1\n2'),'ReplaceLineTerminators(b,''unix'')') && success; success = tester(ReplaceLineTerminators(b,'os9'),sprintf('1\r2'),'ReplaceLineTerminators(b,''os9'')') && success; success = tester(ReplaceLineTerminators(c,'unix'),sprintf('1\n2'),'ReplaceLineTerminators(c,''unix'')') && success; % this detects one windows terminator and one os9, both get replaced % with \n, unix terminator. success = tester(ReplaceLineTerminators(d,'unix'),sprintf('1\n\n2'),'ReplaceLineTerminators(d,''unix'')') && success; % this detects one windows terminator and one os9, both get replaced % with \r\n, windows terminator. success = tester(ReplaceLineTerminators(d,'windows'),sprintf('1\r\n\r\n2'),'ReplaceLineTerminators(d,''winsdows'')') && success; % test: BreakLines success = tester(BreakLines(a),{'1' '2'},'BreakLines(a)') && success; success = tester(BreakLines(b),{'1' '2'},'BreakLines(b)') && success; success = tester(BreakLines(c),{'1' '2'},'BreakLines(c)') && success; % two terminators in a row, so empty line->cell in between success = tester(BreakLines(d),{'1' char(zeros(1,0)) '2'},'BreakLines(d)') && success; catch me success = false; fprintf('Unit test %s failed, error ocurred:\n%s\n',mfilename,me.getReport()); end function [success] = tester(out,check,funcall) if ~isequal(out,check) success = false; fprintf('%s failed\n',funcall); else success = true; end