1//<-- CLI SHELL MODE --> 2// ============================================================================= 3// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 4// Copyright (C) 2011 - Sylvestre LEDRU 5// 6// This file is distributed under the same license as the Scilab package. 7// ============================================================================= 8//splitURL 9[a,b,c,d]=splitURL("http://www.scilab.org"); 10assert_checkequal(a, "http"); 11assert_checkequal(b, "www.scilab.org"); 12assert_checkequal(c, ""); 13assert_checkequal(d, ""); 14[a,b,c,d]=splitURL("http://www.scilab.org/"); 15assert_checkequal(a, "http"); 16assert_checkequal(b, "www.scilab.org"); 17assert_checkequal(c, "/"); 18assert_checkequal(d, ""); 19[a,b,c,d]=splitURL("http://www.scilab.org/products/scilab/environment"); 20assert_checkequal(a, "http"); 21assert_checkequal(b, "www.scilab.org"); 22assert_checkequal(c, "/products/scilab/environment"); 23assert_checkequal(d, ""); 24[a,b,c,d]=splitURL("http://www.scilab.org/content/search?SearchText=plot"); 25assert_checkequal(a, "http"); 26assert_checkequal(b, "www.scilab.org"); 27assert_checkequal(c, "/content/search"); 28assert_checkequal(d, "SearchText=plot"); 29[a,b,c,d]=splitURL("ftp://ftp.free.fr/pub/Distributions_Linux/debian/README"); 30assert_checkequal(a, "ftp"); 31assert_checkequal(b, "ftp.free.fr"); 32assert_checkequal(c, "/pub/Distributions_Linux/debian/README"); 33assert_checkequal(d, ""); 34[a,b,c,d]=splitURL("https://encrypted.google.com"); 35assert_checkequal(a, "https"); 36assert_checkequal(b, "encrypted.google.com"); 37assert_checkequal(c, ""); 38assert_checkequal(d, ""); 39[a,b,c,d,e,f,g]=splitURL("https://plop:ae@encrypted.google.com:443/full/path?query=true#myFragment"); 40assert_checkequal(a, "https"); 41assert_checkequal(b, "encrypted.google.com"); 42assert_checkequal(c, "/full/path"); 43assert_checkequal(d, "query=true"); 44assert_checkequal(e, "plop:ae"); 45assert_checkequal(f, int32(443)); // port 46assert_checkequal(g, "myFragment"); // fragment 47// Badly formatted URL 48assert_checkerror("splitURL(''http://plop@ae:sylvestre.ledru.info:80'');", [], 999); 49// No protocol 50[proto, server, path, query, username, port, frag] = splitURL("www.scilab.org"); 51assert_checkequal(proto, ""); 52assert_checkequal(server, ""); 53assert_checkequal(path, "www.scilab.org"); 54assert_checkequal(query, ""); 55assert_checkequal(username, ""); 56assert_checkequal(port, int32(0)); 57assert_checkequal(frag, ""); 58// Relative URL 59[proto, server, path, query, username, port, frag] = splitURL("./index.html"); 60assert_checkequal(proto, ""); 61assert_checkequal(server, ""); 62assert_checkequal(path, "./index.html"); 63assert_checkequal(query, ""); 64assert_checkequal(username, ""); 65assert_checkequal(port, int32(0)); 66assert_checkequal(frag, ""); 67