use markdown syntax for images
[teliva.git] / manual_tests
blob63bc108be5a36d4250a68e168437e9c07cc9b04d
1 run a program
2 run a program, edit
3 run a program, edit, make an edit, run | edit takes effect
4 run a program with error | big picture
5 run a program, edit, make an error, run
6 run a program, edit, ^g to a different definition, make an edit, ^e to run again
7 run a program, edit, ^g to a non-existent definition
8 run a program, edit, ^g to a different definition, ^g to a different definition, ^e to run again
9 start -> big picture -> edit -> move cursor -> run -> edit | cursor preserved
10 start -> big picture -> edit A -> move cursor -> big picture -> edit B | cursor initialized
11 start -> big picture -> edit -> move cursor -> run -> exit -> start | big picture (optional)
12 start -> big picture -> edit A -> move cursor -> run -> exit -> start -> ... -> edit B | cursor initialized
13 start -> big picture -> edit A -> move cursor -> run -> exit -> start -> ... -> edit B | big picture
14 syntax highlighting for line comments
15 syntax highlighting for multiline comments
16 start -> big picture -> recent changes -> add note -> save | note visible
17 start -> big picture -> arrow keys* | always exactly one definition highlighted
19 It's very important not to leak space on the Lua stack, particularly
20 proportionate to keypresses. That's a recipe for segfaults.
22 This implies that bouncing around between big picture, editor, recent changes,
23 running app.. shouldn't grow the call stack either.
25 == security/privacy
26 program draws over menu -> getch -> Teliva menu is still visible
28 app tries to read/write sensitive teliva files (teliva_edit_buffer, etc.) -> never allowed
29   TODO should we protect .c sources?
31 TODO protect against DoS attack filling up disk
33 assumptions:
34   listing files in a directory is not worth sandboxing
35     since reading their contents is sandboxed
36     and since UNIX permissions protect system directories
38   rmdir() is not worth sandboxing, since it only succeeds on empty directories
39   no need to sandbox unlink() since it's not exposed