-
-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathtests.lua
81 lines (76 loc) · 2.52 KB
/
tests.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
--- This file runs all the tests to ensure all compilers are working correctly.
--- @usage :luafile ~/.local/share/nvim/lazy/compiler.nvim/tests/tests.lua
-- NOTE: These tests are meant to run in a Ryzen 5900x or upper.
-- If your CPU is slower, you will have to increase the wait time
-- in this file, and in every individual test.
local tests_dir = require("compiler.utils").get_tests_dir("tests/languages/")
coroutine.resume(coroutine.create(function()
local co = coroutine.running()
local function sleep(_ms)
vim.defer_fn(function() coroutine.resume(co) end, _ms)
coroutine.yield()
end
dofile(tests_dir .. 'asm.lua')
sleep(10000)
dofile(tests_dir .. 'c.lua')
sleep(10000)
dofile(tests_dir .. 'cpp.lua')
sleep(10000)
dofile(tests_dir .. 'cs.lua')
sleep(10000)
dofile(tests_dir .. 'dart.lua')
sleep(15000)
dofile(tests_dir .. 'elixir.lua')
sleep(3000)
dofile(tests_dir .. 'fortran.lua')
sleep(5000)
dofile(tests_dir .. 'fsharp.lua')
sleep(5000)
dofile(tests_dir .. 'gleam.lua')
sleep(5000)
dofile(tests_dir .. 'go.lua')
sleep(25000)
dofile(tests_dir .. 'java.lua')
sleep(25000)
dofile(tests_dir .. 'javascript.lua')
sleep(5000)
dofile(tests_dir .. 'kotlin.lua')
sleep(25000)
dofile(tests_dir .. 'lua.lua')
sleep(5000)
dofile(tests_dir .. 'make.lua')
sleep(1000)
dofile(tests_dir .. 'perl.lua')
sleep(5000)
dofile(tests_dir .. 'python.lua')
sleep(25000)
dofile(tests_dir .. 'r.lua')
sleep(5000)
dofile(tests_dir .. 'ruby.lua')
sleep(5000)
dofile(tests_dir .. 'rust.lua')
sleep(25000)
dofile(tests_dir .. 'sh.lua')
sleep(5000)
dofile(tests_dir .. 'swift.lua')
sleep(10000)
dofile(tests_dir .. 'typescript.lua')
sleep(5000)
dofile(tests_dir .. 'vb.lua')
sleep(5000)
dofile(tests_dir .. 'zig.lua')
-- Cases that require to be tested manually atm.
-- * python → Run this file.
-- * ruby → Run this file.
-- * shell → Run this file.
-- * elixir → Run this file.
-- * fortran → Run this file.
-- * fsharp → Run this file.
-- * r → Run this file.
-- * typescript → Run this file.
-- * javascript → Run this file.
-- * dart → Run this file.
-- * python/r/elixir/F#/kotlin/swift → REPL
-- * flutter → Run program (its a loop).
--
end))