test_escape.lua (1091B)
1 local ramdisk = require("ramdisk2") 2 3 -- Create a simple test 4 local root = ramdisk.createRoot() 5 local testDir = root:newDir("test") 6 testDir:newFile("example.txt", "Line 1\nLine 2\tTabbed\rCarriage\nPath: C:\\Windows") 7 8 print("=== Original File Content ===") 9 local file = root:traverse("test/example.txt") 10 print(file:read()) 11 12 print("\n=== Serialized (should have escaped chars) ===") 13 local serialized = ramdisk.saveFS(root) 14 -- Show character by character for newlines 15 for i = 1, #serialized do 16 local char = serialized:sub(i, i) 17 local byte = char:byte() 18 if byte == 10 then 19 io.write("[\\n]") 20 elseif byte == 9 then 21 io.write("[\\t]") 22 elseif byte == 13 then 23 io.write("[\\r]") 24 elseif byte == 92 then 25 io.write("[\\]") 26 else 27 io.write(char) 28 end 29 end 30 print("\n") 31 32 print("\n=== Loading back ===") 33 local loadedRoot = ramdisk.loadFS(serialized) 34 local loadedFile = loadedRoot:traverse("test/example.txt") 35 if loadedFile then 36 print("Loaded file content:") 37 print(loadedFile:read()) 38 else 39 print("ERROR: Could not load file!") 40 end