// ============================================================================= // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab // Copyright (C) 2007-2008 - INRIA // // This file is distributed under the same license as the Scilab package. // ============================================================================= // <-- CLI SHELL MODE --> //=============================== // unit tests part //=============================== EMPTY_STR = ""; BLANK = " "; //=============================== s = part(EMPTY_STR ,[]); if (s <> EMPTY_STR ) then bugmes();quit;end //=============================== // compatibility 4.x N = 50; s = part(EMPTY_STR ,N); if (s <> BLANK) then bugmes();quit;end //=============================== s = part(["a","abc","abcd"],[1,1,2]); if (s <> ["aa","aab","aab"]) then bugmes();quit;end //=============================== s1 = part(["a","abc","abcd"],[2,4,6]); s2 = part(["a","abc","abcd"],[2,4,5]); if (s1 <> s2) then bugmes();quit;end if (s1 <> [" ","b","bd"]) then bugmes();quit;end //=============================== N = 20; s = part(" ",ones(1,N)); if (blanks(N) <> s) then bugmes();quit;end //=============================== if part("abc",1)<>"a" then bugmes();quit;end if part("abc",[1 1])<>"aa" then bugmes();quit;end if part("abc",[1;1])<>"aa" then bugmes();quit;end if part("abc",[])<>emptystr() then bugmes();quit;end if part("abc",5)<>BLANK then bugmes();quit;end if part("abc",5:6)<>" " then bugmes();quit;end if or(part(["abc";"x"],1)<>["a";"x"]) then bugmes();quit;end if or(part(["abc";"x"],[1,1])<>["aa";"xx"]) then bugmes();quit;end if or(part(["abc";"x"],[1,2])<>["ab";"x "]) then bugmes();quit;end if or(part(["abc";"x"],[1;1])<>["aa";"xx"]) then bugmes();quit;end if or(part(["abc";"x"],[1;2])<>["ab";"x "]) then bugmes();quit;end //=============================== a=part(["a","abc","abcd"],[1]); assert_checkequal(a,["a","a","a"]); a=part(["a","abc","abcd"],[1,1]); assert_checkequal(a,["aa","aa","aa"]); a=part(["a","abc","abcd"],[1,1,2]); assert_checkequal(a,["aa ","aab","aab"]); N = 10; a=part("-",ones(1:N)); assert_checkequal(a,"----------"); N = 6; pat = "- "; a=part(pat, ones(1:N).*.(1:length(pat))); assert_checkequal(a,"- - - - - - "); a=part(["a string" "another longer one"], $-2:$ ); assert_checkequal(a,["ing","one"]); a=part("Hello world", $:-1:1); assert_checkequal(a,"dlrow olleH"); a=part("Hello world", [ $ 5:6 ]); assert_checkequal(a,"do ");