Skip to content

Commit

Permalink
Enable rest of c test
Browse files Browse the repository at this point in the history
  • Loading branch information
desdic committed Feb 23, 2024
1 parent 03ff823 commit 5c50605
Showing 1 changed file with 40 additions and 32 deletions.
72 changes: 40 additions & 32 deletions tests/c_spec.lua
Original file line number Diff line number Diff line change
Expand Up @@ -15,38 +15,46 @@ describe("c", function()
it("functions", function()
local entries = core.get_captures({queries={"functions"}, bufids=buffers})

-- print(vim.inspect(entries))
assert.equals(#entries, 5)

-- assert.equals('tests/c/test.c:16:0:int days_since_birth(struct Person *p) {', entries[1])
-- assert.equals('tests/c/test.c:45:0:int basic_calc(struct Person *p) {', entries[2])
-- assert.equals('tests/c/test.c:55:0:void print_person(struct Person *p, format_func func) {', entries[3])
-- assert.equals('tests/c/test.c:65:0:char **do_nothing(char **argv) {', entries[4])
-- assert.equals('tests/c/test.c:69:0:int main(int argc, char **argv) {', entries[5])
eq(#entries, 5)

eq(entries[1].filename, "tests/c/test.c")
eq(entries[1].lnum, 16)
eq(entries[1].col, 0)
eq(entries[1].line, 'int days_since_birth(struct Person *p) {')
eq(entries[2].line, 'int basic_calc(struct Person *p) {')
eq(entries[3].line, 'void print_person(struct Person *p, format_func func) {')
eq(entries[4].line, 'char **do_nothing(char **argv) {')
eq(entries[5].line, 'int main(int argc, char **argv) {')

end)
it("callings", function()
local entries = core.get_captures({queries={"callings"}, bufids=buffers})
eq(#entries, 10)


eq(entries[1].filename, "tests/c/test.c")
eq(entries[1].lnum, 23)
eq(entries[1].col, 2)

eq(entries[1].line, ' if (sscanf(p->born, "%d-%d-%d", &day, &month, &year) != EOF) {')
eq(entries[2].line, ' now = time(0);')
eq(entries[3].line, ' parsedDate = localtime(&now);')
eq(entries[4].line, ' time_t born = mktime(parsedDate);')
eq(entries[5].line, ' return days_since_birth(p);')
eq(entries[6].line, ' int age = (*func)(p);')
eq(entries[7].line, ' printf("%s is %d days old\\n", p->name, (*func)(p));')
eq(entries[8].line, ' strncpy(donald.name, "Donald Duck", MAXNAME);')
eq(entries[9].line, ' strncpy(donald.born, "07-09-1934", MAXDATE);')
eq(entries[10].line, ' print_person(&donald, basic_calc);')
end)
it("comments", function()
local entries = core.get_captures({queries={"comments"}, bufids=buffers})
eq(#entries, 4)

-- eq('tests/c/test.c:52:0:/*', entries[1])
-- eq('tests/c/test.c:59:2: // not used', entries[2])
-- eq('tests/c/test.c:71:2: // Create Donald', entries[3])
-- eq('tests/c/test.c:76:2: // Print Donald', entries[4])
end)
-- it("callings", function()
-- local entries = lens._get_captures({queries={"callings"}, bufids=buffers})
-- assert.equals(#entries, 10)
--
-- assert.equals('tests/c/test.c:23:2: if (sscanf(p->born, "%d-%d-%d", &day, &month, &year) != EOF) {', entries[1])
-- assert.equals('tests/c/test.c:25:4: now = time(0);', entries[2])
-- assert.equals('tests/c/test.c:29:4: parsedDate = localtime(&now);', entries[3])
-- assert.equals('tests/c/test.c:34:4: time_t born = mktime(parsedDate);', entries[4])
-- assert.equals('tests/c/test.c:49:2: return days_since_birth(p);', entries[5])
-- assert.equals('tests/c/test.c:60:2: int age = (*func)(p);', entries[6])
-- assert.equals('tests/c/test.c:62:2: printf("%s is %d days old\\n", p->name, (*func)(p));', entries[7])
-- assert.equals('tests/c/test.c:73:2: strncpy(donald.name, "Donald Duck", MAXNAME);', entries[8])
-- assert.equals('tests/c/test.c:74:2: strncpy(donald.born, "07-09-1934", MAXDATE);', entries[9])
-- assert.equals('tests/c/test.c:77:2: print_person(&donald, basic_calc);', entries[10])
-- end)
-- it("comments", function()
-- local entries = lens._get_captures({queries={"comments"}, bufids=buffers})
-- assert.equals(#entries, 4)
--
-- assert.equals('tests/c/test.c:52:0:/*', entries[1])
-- assert.equals('tests/c/test.c:59:2: // not used', entries[2])
-- assert.equals('tests/c/test.c:71:2: // Create Donald', entries[3])
-- assert.equals('tests/c/test.c:76:2: // Print Donald', entries[4])
-- end)

end)

0 comments on commit 5c50605

Please sign in to comment.