diff options
Diffstat (limited to 'test/test_data.lua')
| -rw-r--r-- | test/test_data.lua | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/test_data.lua b/test/test_data.lua index 4ed58f8..ec95fae 100644 --- a/test/test_data.lua +++ b/test/test_data.lua @@ -461,3 +461,20 @@ assert(not im.week, 'no scope line: today') assert(data.immich_parse('generated 1\nscope week\n').week, 'scope week parses') print('test_data: all assertions passed') + +-- nvtable_parse: nvtable -C -E rows. The marker column is positional, so an +-- empty installed or repo column ('--') must not shift it. +local up = data.nvtable_parse(read('test/fixtures/updates_cache')) +assert(up and #up == 6, 'updates rows, got ' .. tostring(up and #up)) +local r = up[1] +assert(r.repo == 'personal' and r.name == 'foo-bin' and r.installed == '1.14.9' + and r.shipped == '1.14.9' and r.behind and r.bump and r.upstream == '1.14.10', + 'updates row 1') +assert(up[2].behind and not up[2].bump and up[2].upstream == '2.1.284', 'updates row 2') +assert(up[3].upstream == nil and up[3].shipped == '3.16.31', 'updates row 3') +assert(up[4].shipped == nil and up[4].repo == nil, 'updates row 4: -- is nil') +assert(up[5].installed == nil and not up[5].behind, 'updates row 5: not installed') +assert(not up[6].behind and not up[6].bump, 'updates row 6: current') +assert(up.upgrade == 3 and up.bump == 1 and up.current == 46 and up.missing == 18, + 'updates summary') +assert(data.nvtable_parse('') == nil, 'updates: empty cache is nil') |
