1function readfile(n) 2 local f = io.open(n, "rb") 3 local s = f:read("*a") 4 f:close() 5 return s 6end 7 8lf = readfile("t1lf.txt") 9os.remove("t1crlf.txt") 10os.execute("lua t1.lua < t1lf.txt > t1crlf.txt") 11crlf = readfile("t1crlf.txt") 12assert(crlf == string.gsub(lf, "\010", "\013\010"), "broken") 13 14gt = readfile("t2gt.qp") 15os.remove("t2.qp") 16os.execute("lua t2.lua < t2.txt > t2.qp") 17t2 = readfile("t2.qp") 18assert(gt == t2, "broken") 19 20os.remove("t1crlf.txt") 21os.execute("lua t3.lua < t1lf.txt > t1crlf.txt") 22crlf = readfile("t1crlf.txt") 23assert(crlf == string.gsub(lf, "\010", "\013\010"), "broken") 24 25t = readfile("test.lua") 26os.execute("lua t4.lua < test.lua > t") 27t2 = readfile("t") 28assert(t == t2, "broken") 29 30os.remove("output.b64") 31gt = readfile("gt.b64") 32os.execute("lua t5.lua") 33t5 = readfile("output.b64") 34assert(gt == t5, "failed") 35 36print("1 2 5 6 10 passed") 37print("2 3 4 5 6 10 passed") 38print("2 5 6 7 8 10 passed") 39print("5 9 passed") 40print("5 6 10 11 passed") 41 42os.remove("t") 43os.remove("t2.qp") 44os.remove("t1crlf.txt") 45os.remove("t11.b64") 46os.remove("output.b64") 47