Eshu

 view release on metacpan or  search on metacpan

t/0187-hl-lua.t  view on Meta::CPAN

    my $out = hl('local ok, err = pcall(f)');
    like($out, qr/<span class="esh-b">pcall<\/span>/, 'pcall builtin');
}

{
    my $out = hl('xpcall(f, handler)');
    like($out, qr/<span class="esh-b">xpcall<\/span>/, 'xpcall builtin');
}

{
    my $out = hl('rawget(t, k); rawset(t, k, v)');
    like($out, qr/<span class="esh-b">rawget<\/span>/, 'rawget builtin');
    like($out, qr/<span class="esh-b">rawset<\/span>/, 'rawset builtin');
}

{
    my $out = hl('setmetatable(t, mt); getmetatable(t)');
    like($out, qr/<span class="esh-b">setmetatable<\/span>/, 'setmetatable builtin');
    like($out, qr/<span class="esh-b">getmetatable<\/span>/, 'getmetatable builtin');
}

{
    my $out = hl('tonumber("42"); tostring(42)');
    like($out, qr/<span class="esh-b">tonumber<\/span>/, 'tonumber builtin');
    like($out, qr/<span class="esh-b">tostring<\/span>/, 'tostring builtin');
}

{
    my $out = hl('coroutine.create(f)');
    like($out, qr/<span class="esh-b">coroutine<\/span>/, 'coroutine builtin');
}

{
    my $out = hl('math.floor(3.7)');
    like($out, qr/<span class="esh-b">math<\/span>/, 'math builtin');
}

{
    my $out = hl('table.insert(t, v); table.sort(t)');
    like($out, qr/<span class="esh-b">table<\/span>/, 'table builtin');
}

{
    my $out = hl('io.write("hello")');
    like($out, qr/<span class="esh-b">io<\/span>/, 'io builtin');
}

{
    my $out = hl('os.time(); os.exit(0)');
    like($out, qr/<span class="esh-b">os<\/span>/, 'os builtin');
}

{
    my $out = hl('utf8.len(s)');
    like($out, qr/<span class="esh-b">utf8<\/span>/, 'utf8 builtin');
}

# ── partial keyword non-match ─────────────────────────────────────

{
    my $out = hl('endpoint');
    unlike($out, qr/<span class="esh-k">end<\/span>/, 'end not matched inside endpoint');
}

{
    my $out = hl('dofile');
    unlike($out, qr/<span class="esh-k">do<\/span>/, 'do not matched inside dofile');
}

done_testing;



( run in 0.568 second using v1.01-cache-2.11-cpan-16aabcbfbcb )