New coverage reports

This commit is contained in:
Ukendio 2025-03-28 01:53:19 +01:00
parent 34777b51c4
commit dd9db448e3
46 changed files with 6161 additions and 12173 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 B

65
coverage/ansi.luau.html vendored Normal file
View file

@ -0,0 +1,65 @@
<html><head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<style>
body { font-family: monospace; font-size: 16px; }
.zero-hits { background-color: #fcc; font-weight: bold; color: red; }
.nonzero-hits { color: green; font-weight: bold; }
.low-hits { background-color: #ffe6b3; }
.high-hits { background-color: #cfc; }
th, td { padding: 0px; font-size: 12px; }
table.table { font-size: 14px; border-collapse: collapse; }
table.table th, table.table td { padding: 1px; font-size: 12px; line-height: 1.2; }
table.table tr { height: auto; }
</style></head><body>
<h1 class="text-center">ansi.luau Coverage</h1>
<h2>Total Execution Hits: 1</h2>
<h2>Function Coverage Overview: 11.11%</h2>
<button class="btn btn-primary mb-2" type="button" data-bs-toggle="collapse" data-bs-target="#funcTable">Toggle Function Coverage</button>
<div class="collapse show" id="funcTable">
<h2>Function Coverage:</h2><table class="table table-bordered"><thead><tr><th>Function</th><th>Hits</th></tr></thead><tbody>
<tr><td style="padding: 1px; min-width: 18ch;"><main></td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">white_underline:2</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">white:6</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">green:10</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">red:14</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">yellow:18</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">red_highlight:22</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">green_highlight:26</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 18ch;">gray:30</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
</tbody></table></div>
<h2>Source Code:</h2><table class="table table-bordered"><thead><tr><th>Line</th><th>Hits</th><th>Code</th></tr></thead><tbody>
<tr><td>1</td><td>1</td><td><span class=high-hits>return {</span></td></tr>
<tr><td>2</td><td>1</td><td><span class=high-hits>white_underline = function(s: any)</span></td></tr>
<tr><td>3</td><td>0</td><td><span class=zero-hits>return `\27[1;4m{s}\27[0m`</span></td></tr>
<tr><td>4</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>5</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>6</td><td>1</td><td><span class=high-hits>white = function(s: any)</span></td></tr>
<tr><td>7</td><td>0</td><td><span class=zero-hits>return `\27[37;1m{s}\27[0m`</span></td></tr>
<tr><td>8</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>9</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>10</td><td>1</td><td><span class=high-hits>green = function(s: any)</span></td></tr>
<tr><td>11</td><td>0</td><td><span class=zero-hits>return `\27[32;1m{s}\27[0m`</span></td></tr>
<tr><td>12</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>13</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>14</td><td>1</td><td><span class=high-hits>red = function(s: any)</span></td></tr>
<tr><td>15</td><td>0</td><td><span class=zero-hits>return `\27[31;1m{s}\27[0m`</span></td></tr>
<tr><td>16</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>17</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>18</td><td>1</td><td><span class=high-hits>yellow = function(s: any)</span></td></tr>
<tr><td>19</td><td>0</td><td><span class=zero-hits>return `\27[33;1m{s}\27[0m`</span></td></tr>
<tr><td>20</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>21</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>22</td><td>1</td><td><span class=high-hits>red_highlight = function(s: any)</span></td></tr>
<tr><td>23</td><td>0</td><td><span class=zero-hits>return `\27[41;1;30m{s}\27[0m`</span></td></tr>
<tr><td>24</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>25</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>26</td><td>1</td><td><span class=high-hits>green_highlight = function(s: any)</span></td></tr>
<tr><td>27</td><td>0</td><td><span class=zero-hits>return `\27[42;1;30m{s}\27[0m`</span></td></tr>
<tr><td>28</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>29</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>30</td><td>1</td><td><span class=high-hits>gray = function(s: any)</span></td></tr>
<tr><td>31</td><td>0</td><td><span class=zero-hits>return `\27[30;1m{s}\27[0m`</span></td></tr>
<tr><td>32</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>33</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
</tbody></table></body></html>

View file

@ -1 +0,0 @@
genhtml coverage.out --output-directory=coverage --synthesize-missing --ignore-errors source

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 B

70
coverage/entity_visualiser.luau.html vendored Normal file
View file

@ -0,0 +1,70 @@
<html><head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<style>
body { font-family: monospace; font-size: 16px; }
.zero-hits { background-color: #fcc; font-weight: bold; color: red; }
.nonzero-hits { color: green; font-weight: bold; }
.low-hits { background-color: #ffe6b3; }
.high-hits { background-color: #cfc; }
th, td { padding: 0px; font-size: 12px; }
table.table { font-size: 14px; border-collapse: collapse; }
table.table th, table.table td { padding: 1px; font-size: 12px; line-height: 1.2; }
table.table tr { height: auto; }
</style></head><body>
<h1 class="text-center">entity_visualiser.luau Coverage</h1>
<h2>Total Execution Hits: 1</h2>
<h2>Function Coverage Overview: 25.00%</h2>
<button class="btn btn-primary mb-2" type="button" data-bs-toggle="collapse" data-bs-target="#funcTable">Toggle Function Coverage</button>
<div class="collapse show" id="funcTable">
<h2>Function Coverage:</h2><table class="table table-bordered"><thead><tr><th>Function</th><th>Hits</th></tr></thead><tbody>
<tr><td style="padding: 1px; min-width: 13ch;"><main></td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 13ch;">pe:6</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 13ch;">name:11</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 13ch;">components:15</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
</tbody></table></div>
<h2>Source Code:</h2><table class="table table-bordered"><thead><tr><th>Line</th><th>Hits</th><th>Code</th></tr></thead><tbody>
<tr><td>1</td><td>1</td><td><span class=high-hits>local jecs = require("@jecs")</span></td></tr>
<tr><td>2</td><td>1</td><td><span class=high-hits>local ECS_GENERATION = jecs.ECS_GENERATION</span></td></tr>
<tr><td>3</td><td>1</td><td><span class=high-hits>local ECS_ID = jecs.ECS_ID</span></td></tr>
<tr><td>4</td><td>1</td><td><span class=high-hits>local ansi = require("@tools/ansi")</span></td></tr>
<tr><td>5</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>6</td><td>1</td><td><span class=high-hits>local function pe(e: any)</span></td></tr>
<tr><td>7</td><td>0</td><td><span class=zero-hits>local gen = ECS_GENERATION(e)</span></td></tr>
<tr><td>8</td><td>0</td><td><span class=zero-hits>return ansi.green(`e{ECS_ID(e)}`) .. ansi.yellow(`v{gen}`)</span></td></tr>
<tr><td>9</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>10</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>11</td><td>1</td><td><span class=high-hits>local function name(world: jecs.World, id: any)</span></td></tr>
<tr><td>12</td><td>0</td><td><span class=zero-hits>return world:get(id, jecs.Name) or `${id}`</span></td></tr>
<tr><td>13</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>14</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>15</td><td>1</td><td><span class=high-hits>local function components(world: jecs.World, entity: any)</span></td></tr>
<tr><td>16</td><td>0</td><td><span class=zero-hits>local r = jecs.entity_index_try_get(world.entity_index, entity)</span></td></tr>
<tr><td>17</td><td>0</td><td><span class=zero-hits>if not r then</span></td></tr>
<tr><td>18</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>19</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>20</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>21</td><td>0</td><td><span class=zero-hits>local archetype = r.archetype</span></td></tr>
<tr><td>22</td><td>0</td><td><span class=zero-hits>local row = r.row</span></td></tr>
<tr><td>23</td><td>0</td><td><span class=zero-hits>print(`Entity {pe(entity)}`)</span></td></tr>
<tr><td>24</td><td>0</td><td><span class=zero-hits>print("-----------------------------------------------------")</span></td></tr>
<tr><td>25</td><td>0</td><td><span class=zero-hits>for i, column in archetype.columns do</span></td></tr>
<tr><td>26</td><td>0</td><td><span class=zero-hits>local component = archetype.types[i]</span></td></tr>
<tr><td>27</td><td>0</td><td><span class=zero-hits>local n</span></td></tr>
<tr><td>28</td><td>0</td><td><span class=zero-hits>if jecs.IS_PAIR(component) then</span></td></tr>
<tr><td>29</td><td>0</td><td><span class=zero-hits>n = `({name(world, jecs.pair_first(world, component))}, {name(world, jecs.pair_second(world, component))})`</span></td></tr>
<tr><td>30</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>31</td><td>0</td><td><span class=zero-hits>n = name(world, component)</span></td></tr>
<tr><td>32</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>33</td><td>0</td><td><span class=zero-hits>local data = column[row] or "TAG"</span></td></tr>
<tr><td>34</td><td>0</td><td><span class=zero-hits>print(`| {n} | {data} |`)</span></td></tr>
<tr><td>35</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>36</td><td>0</td><td><span class=zero-hits>print("-----------------------------------------------------")</span></td></tr>
<tr><td>37</td><td>0</td><td><span class=zero-hits>return true</span></td></tr>
<tr><td>38</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>39</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>40</td><td>1</td><td><span class=high-hits>return {</span></td></tr>
<tr><td>41</td><td>1</td><td><span class=high-hits>components = components,</span></td></tr>
<tr><td>42</td><td>1</td><td><span class=high-hits>prettify = pe,</span></td></tr>
<tr><td>43</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
</tbody></table></body></html>

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 B

View file

@ -1,129 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out</title>
<link rel="stylesheet" type="text/css" href="gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue">top level</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryMed">80.3&nbsp;%</td>
<td class="headerCovTableEntry">3222</td>
<td class="headerCovTableEntry">2587</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">65.3&nbsp;%</td>
<td class="headerCovTableEntry">219</td>
<td class="headerCovTableEntry">143</td>
</tr>
<tr><td><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Directory <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><img src="glass.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/index.html">jecs</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=72 height=10 alt="71.7%"><img src="snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/tools/index.html">jecs/tools</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=63 height=10 alt="63.0%"><img src="snow.png" width=37 height=10 alt="63.0%"></td></tr></table>
</td>
<td class="coverPerLo">63.0&nbsp;%</td>
<td class="coverNumDflt">508</td>
<td class="coverNumDflt">320</td>
<td class="coverPerLo">63.6&nbsp;%</td>
<td class="coverNumDflt">55</td>
<td class="coverNumDflt">35</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/test/test/index.html">jecs/test/test</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=98 height=10 alt="97.9%"><img src="snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,129 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out</title>
<link rel="stylesheet" type="text/css" href="gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue">top level</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryMed">80.3&nbsp;%</td>
<td class="headerCovTableEntry">3222</td>
<td class="headerCovTableEntry">2587</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">65.3&nbsp;%</td>
<td class="headerCovTableEntry">219</td>
<td class="headerCovTableEntry">143</td>
</tr>
<tr><td><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Directory <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><img src="glass.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/tools/index.html">jecs/tools</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=63 height=10 alt="63.0%"><img src="snow.png" width=37 height=10 alt="63.0%"></td></tr></table>
</td>
<td class="coverPerLo">63.0&nbsp;%</td>
<td class="coverNumDflt">508</td>
<td class="coverNumDflt">320</td>
<td class="coverPerLo">63.6&nbsp;%</td>
<td class="coverNumDflt">55</td>
<td class="coverNumDflt">35</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/index.html">jecs</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=72 height=10 alt="71.7%"><img src="snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/test/test/index.html">jecs/test/test</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=98 height=10 alt="97.9%"><img src="snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

141
coverage/index.html vendored
View file

@ -1,129 +1,12 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">
<html lang="en"> </head><body>
<h1 class="text-center">Coverage Report</h1>
<head> <table class="table table-striped table-bordered"><thead><tr><th>File</th><th>Total Hits</th><th>Functions</th></tr></thead><tbody>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <tr><td><a href="tests.luau.html">tests.luau</a></td><td>72</td><td>67</td></tr>
<title>LCOV - coverage.out</title> <tr><td><a href="jecs.luau.html">jecs.luau</a></td><td>161937</td><td>98</td></tr>
<link rel="stylesheet" type="text/css" href="gcov.css"> <tr><td><a href="testkit.luau.html">testkit.luau</a></td><td>615</td><td>31</td></tr>
</head> <tr><td><a href="lifetime_tracker.luau.html">lifetime_tracker.luau</a></td><td>1</td><td>11</td></tr>
<tr><td><a href="entity_visualiser.luau.html">entity_visualiser.luau</a></td><td>1</td><td>4</td></tr>
<body> <tr><td><a href="ansi.luau.html">ansi.luau</a></td><td>1</td><td>9</td></tr>
</tbody></table></body></html>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue">top level</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryMed">80.3&nbsp;%</td>
<td class="headerCovTableEntry">3222</td>
<td class="headerCovTableEntry">2587</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">65.3&nbsp;%</td>
<td class="headerCovTableEntry">219</td>
<td class="headerCovTableEntry">143</td>
</tr>
<tr><td><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Directory <span title="Click to sort table by file name" class="tableHeadSort"><img src="glass.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/index.html">jecs</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=72 height=10 alt="71.7%"><img src="snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/test/test/index.html">jecs/test/test</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=98 height=10 alt="97.9%"><img src="snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs/tools/index.html">jecs/tools</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=63 height=10 alt="63.0%"><img src="snow.png" width=37 height=10 alt="63.0%"></td></tr></table>
</td>
<td class="coverPerLo">63.0&nbsp;%</td>
<td class="coverNumDflt">508</td>
<td class="coverNumDflt">320</td>
<td class="coverPerLo">63.6&nbsp;%</td>
<td class="coverNumDflt">55</td>
<td class="coverNumDflt">35</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

2795
coverage/jecs.luau.html vendored Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,105 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs</title>
<link rel="stylesheet" type="text/css" href="../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../index.html">top level</a> - jecs</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">71.7&nbsp;%</td>
<td class="headerCovTableEntry">1487</td>
<td class="headerCovTableEntry">1066</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">53.6&nbsp;%</td>
<td class="headerCovTableEntry">97</td>
<td class="headerCovTableEntry">52</td>
</tr>
<tr><td><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><img src="../glass.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs.luau .gcov.html">jecs.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../ruby.png" width=72 height=10 alt="71.7%"><img src="../snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,105 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs</title>
<link rel="stylesheet" type="text/css" href="../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../index.html">top level</a> - jecs</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">71.7&nbsp;%</td>
<td class="headerCovTableEntry">1487</td>
<td class="headerCovTableEntry">1066</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">53.6&nbsp;%</td>
<td class="headerCovTableEntry">97</td>
<td class="headerCovTableEntry">52</td>
</tr>
<tr><td><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><img src="../glass.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs.luau .gcov.html">jecs.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../ruby.png" width=72 height=10 alt="71.7%"><img src="../snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,105 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs</title>
<link rel="stylesheet" type="text/css" href="../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../index.html">top level</a> - jecs</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">71.7&nbsp;%</td>
<td class="headerCovTableEntry">1487</td>
<td class="headerCovTableEntry">1066</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">53.6&nbsp;%</td>
<td class="headerCovTableEntry">97</td>
<td class="headerCovTableEntry">52</td>
</tr>
<tr><td><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><img src="../glass.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="jecs.luau .gcov.html">jecs.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../ruby.png" width=72 height=10 alt="71.7%"><img src="../snow.png" width=28 height=10 alt="71.7%"></td></tr></table>
</td>
<td class="coverPerLo">71.7&nbsp;%</td>
<td class="coverNumDflt">1487</td>
<td class="coverNumDflt">1066</td>
<td class="coverPerLo">53.6&nbsp;%</td>
<td class="coverNumDflt">97</td>
<td class="coverNumDflt">52</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,754 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/jecs.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../index.html">top level</a> - <a href="index.html">jecs</a> - jecs.luau <span style="font-size: 80%;"> (<a href="jecs.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">71.7&nbsp;%</td>
<td class="headerCovTableEntry">1487</td>
<td class="headerCovTableEntry">1066</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">53.6&nbsp;%</td>
<td class="headerCovTableEntry">97</td>
<td class="headerCovTableEntry">52</td>
</tr>
<tr><td><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="jecs.luau .func.html"><img src="../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L142">ECS_COMBINE:144 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L174">ECS_ENTITY_T_HI:176 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L539">ECS_ID_IS_WILDCARD:541 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L185">ECS_PAIR_FIRST:187 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L189">ECS_PAIR_SECOND:191 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1324">NOOP:1326 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L388">archetype_append:390 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L608">archetype_append_to_records:610 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1084">archetype_disconnect_edge:1086 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L706">archetype_ensure:708 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L778">archetype_ensure_edge:780 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1016">archetype_fast_delete:1018 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1008">archetype_fast_delete_last:1010 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L767">archetype_init_edge:769 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1095">archetype_remove_edge:1097 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L832">create_edge_for_add:834 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L843">create_edge_for_remove:845 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L242">ecs_get_alive:244 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L234">entity_index_get_alive:236 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L230">entity_index_is_alive:232 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L265">entity_index_new_id:267 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L220">entity_index_try_get_fast:222 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L409">entity_move:411 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L427">fetch:429 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L732">find_archetype_with:734 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L720">find_insert:722 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L319">find_observers:321 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L423">hash:425 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L792">init_edge_for_add:794 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L809">init_edge_for_remove:811 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L398">new_entity:400 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L296">query_match:298 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L469">world_has_one_inline:471 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1456">world_query_iter_next:1458 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1513">world_query_iter_next:1515 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1543">world_query_iter_next:1545 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1574">world_query_iter_next:1576 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1606">world_query_iter_next:1608 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1930">world_query_iter_next:1932 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1958">world_query_iter_next:1960 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1987">world_query_iter_next:1989 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2017">world_query_iter_next:2019 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2048">world_query_iter_next:2050 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2080">world_query_iter_next:2082 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2114">world_query_iter_next:2116 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L151">ECS_GENERATION_INC:153 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L854">archetype_traverse_add:856 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L870">archetype_traverse_remove:872 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1804">on_delete_callback:1806 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1712">query_with:1714 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1169">world_cleanup:1171 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L702">world_parent:704 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1133">archetype_destroy:1135 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2265">world_children:2267 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2231">world_each:2233 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1484">world_query_iter_next:1486 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1640">world_query_iter_next:1642 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L206">entity_index_try_get:208 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1800">on_create_callback:1802 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1064">world_clear:1066 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1746">query_archetypes:1748 </a></td>
<td class="coverFnHi">5</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1750">query_cached:1752 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1682">query_without:1684 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1429">world_query_iter_next:1431 </a></td>
<td class="coverFnHi">7</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1903">world_query_iter_next:1905 </a></td>
<td class="coverFnHi">8</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1817">cached_query_iter:1819 </a></td>
<td class="coverFnHi">11</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1877">world_query_iter_next:1879 </a></td>
<td class="coverFnHi">11</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L147">ECS_IS_PAIR:149 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L286">ecs_pair_first:288 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L750">find_archetype_without:752 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L291">ecs_pair_second:293 </a></td>
<td class="coverFnHi">13</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L166">ECS_ENTITY_T_LO:168 </a></td>
<td class="coverFnHi">14</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L170">ECS_GENERATION:172 </a></td>
<td class="coverFnHi">15</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1100">archetype_clear_edges:1102 </a></td>
<td class="coverFnHi">17</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L193">entity_index_try_get_any:195 </a></td>
<td class="coverFnHi">19</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1674">query_iter:1676 </a></td>
<td class="coverFnHi">20</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2248">&lt;anonymous&gt;:2250 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1337">query_iter_init:1339 </a></td>
<td class="coverFnHi">26</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2171">world_query:2173 </a></td>
<td class="coverFnHi">33</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1025">archetype_delete:1027 </a></td>
<td class="coverFnHi">57</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L485">world_has:487 </a></td>
<td class="coverFnHi">59</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2315">world_new:2317 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L971">world_component:973 </a></td>
<td class="coverFnHi">108</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1320">world_contains:1322 </a></td>
<td class="coverFnHi">137</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L178">ECS_PAIR:180 </a></td>
<td class="coverFnHi">166</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L983">world_remove:985 </a></td>
<td class="coverFnHi">281</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1403">world_query_iter_next:1405 </a></td>
<td class="coverFnHi">556</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L545">id_record_ensure:547 </a></td>
<td class="coverFnHi">674</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L438">world_get:440 </a></td>
<td class="coverFnHi">718</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L633">archetype_create:635 </a></td>
<td class="coverFnHi">936</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L507">world_target:509 </a></td>
<td class="coverFnHi">1378</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L328">archetype_move:330 </a></td>
<td class="coverFnHi">1778</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L919">world_set:921 </a></td>
<td class="coverFnHi">2739</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L887">world_add:889 </a></td>
<td class="coverFnHi">19044</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1190">world_delete:1192 </a></td>
<td class="coverFnHi">65536</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L698">world_entity:700 </a></td>
<td class="coverFnHi">66836</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,754 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/jecs.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../index.html">top level</a> - <a href="index.html">jecs</a> - jecs.luau <span style="font-size: 80%;"> (<a href="jecs.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">71.7&nbsp;%</td>
<td class="headerCovTableEntry">1487</td>
<td class="headerCovTableEntry">1066</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">53.6&nbsp;%</td>
<td class="headerCovTableEntry">97</td>
<td class="headerCovTableEntry">52</td>
</tr>
<tr><td><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="jecs.luau .func-c.html"><img src="../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2248">&lt;anonymous&gt;:2250 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L142">ECS_COMBINE:144 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L174">ECS_ENTITY_T_HI:176 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L166">ECS_ENTITY_T_LO:168 </a></td>
<td class="coverFnHi">14</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L170">ECS_GENERATION:172 </a></td>
<td class="coverFnHi">15</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L151">ECS_GENERATION_INC:153 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L539">ECS_ID_IS_WILDCARD:541 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L147">ECS_IS_PAIR:149 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L178">ECS_PAIR:180 </a></td>
<td class="coverFnHi">166</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L185">ECS_PAIR_FIRST:187 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L189">ECS_PAIR_SECOND:191 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1324">NOOP:1326 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L388">archetype_append:390 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L608">archetype_append_to_records:610 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1100">archetype_clear_edges:1102 </a></td>
<td class="coverFnHi">17</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L633">archetype_create:635 </a></td>
<td class="coverFnHi">936</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1025">archetype_delete:1027 </a></td>
<td class="coverFnHi">57</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1133">archetype_destroy:1135 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1084">archetype_disconnect_edge:1086 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L706">archetype_ensure:708 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L778">archetype_ensure_edge:780 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1016">archetype_fast_delete:1018 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1008">archetype_fast_delete_last:1010 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L767">archetype_init_edge:769 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L328">archetype_move:330 </a></td>
<td class="coverFnHi">1778</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1095">archetype_remove_edge:1097 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L854">archetype_traverse_add:856 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L870">archetype_traverse_remove:872 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1817">cached_query_iter:1819 </a></td>
<td class="coverFnHi">11</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L832">create_edge_for_add:834 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L843">create_edge_for_remove:845 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L242">ecs_get_alive:244 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L286">ecs_pair_first:288 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L291">ecs_pair_second:293 </a></td>
<td class="coverFnHi">13</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L234">entity_index_get_alive:236 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L230">entity_index_is_alive:232 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L265">entity_index_new_id:267 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L206">entity_index_try_get:208 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L193">entity_index_try_get_any:195 </a></td>
<td class="coverFnHi">19</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L220">entity_index_try_get_fast:222 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L409">entity_move:411 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L427">fetch:429 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L732">find_archetype_with:734 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L750">find_archetype_without:752 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L720">find_insert:722 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L319">find_observers:321 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L423">hash:425 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L545">id_record_ensure:547 </a></td>
<td class="coverFnHi">674</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L792">init_edge_for_add:794 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L809">init_edge_for_remove:811 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L398">new_entity:400 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1800">on_create_callback:1802 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1804">on_delete_callback:1806 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1746">query_archetypes:1748 </a></td>
<td class="coverFnHi">5</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1750">query_cached:1752 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1674">query_iter:1676 </a></td>
<td class="coverFnHi">20</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1337">query_iter_init:1339 </a></td>
<td class="coverFnHi">26</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L296">query_match:298 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1712">query_with:1714 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1682">query_without:1684 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L887">world_add:889 </a></td>
<td class="coverFnHi">19044</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2265">world_children:2267 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1169">world_cleanup:1171 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1064">world_clear:1066 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L971">world_component:973 </a></td>
<td class="coverFnHi">108</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1320">world_contains:1322 </a></td>
<td class="coverFnHi">137</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1190">world_delete:1192 </a></td>
<td class="coverFnHi">65536</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2231">world_each:2233 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L698">world_entity:700 </a></td>
<td class="coverFnHi">66836</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L438">world_get:440 </a></td>
<td class="coverFnHi">718</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L485">world_has:487 </a></td>
<td class="coverFnHi">59</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L469">world_has_one_inline:471 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2315">world_new:2317 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L702">world_parent:704 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2171">world_query:2173 </a></td>
<td class="coverFnHi">33</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1403">world_query_iter_next:1405 </a></td>
<td class="coverFnHi">556</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1429">world_query_iter_next:1431 </a></td>
<td class="coverFnHi">7</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1456">world_query_iter_next:1458 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1484">world_query_iter_next:1486 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1513">world_query_iter_next:1515 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1543">world_query_iter_next:1545 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1574">world_query_iter_next:1576 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1606">world_query_iter_next:1608 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1640">world_query_iter_next:1642 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1877">world_query_iter_next:1879 </a></td>
<td class="coverFnHi">11</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1903">world_query_iter_next:1905 </a></td>
<td class="coverFnHi">8</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1930">world_query_iter_next:1932 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1958">world_query_iter_next:1960 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L1987">world_query_iter_next:1989 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2017">world_query_iter_next:2019 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2048">world_query_iter_next:2050 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2080">world_query_iter_next:2082 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L2114">world_query_iter_next:2116 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L983">world_remove:985 </a></td>
<td class="coverFnHi">281</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L919">world_set:921 </a></td>
<td class="coverFnHi">2739</td>
</tr>
<tr>
<td class="coverFn"><a href="jecs.luau .gcov.html#L507">world_target:509 </a></td>
<td class="coverFnHi">1378</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

File diff suppressed because it is too large Load diff

View file

@ -1,105 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/test/test</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../../index.html">top level</a> - jecs/test/test</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">97.9&nbsp;%</td>
<td class="headerCovTableEntry">1227</td>
<td class="headerCovTableEntry">1201</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryMed">83.6&nbsp;%</td>
<td class="headerCovTableEntry">67</td>
<td class="headerCovTableEntry">56</td>
</tr>
<tr><td><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><img src="../../../glass.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="tests.luau .gcov.html">tests.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=98 height=10 alt="97.9%"><img src="../../../snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,105 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/test/test</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../../index.html">top level</a> - jecs/test/test</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">97.9&nbsp;%</td>
<td class="headerCovTableEntry">1227</td>
<td class="headerCovTableEntry">1201</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryMed">83.6&nbsp;%</td>
<td class="headerCovTableEntry">67</td>
<td class="headerCovTableEntry">56</td>
</tr>
<tr><td><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><img src="../../../glass.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="tests.luau .gcov.html">tests.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=98 height=10 alt="97.9%"><img src="../../../snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,107 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/test/test</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../../index.html">top level</a> - jecs/test/test</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">97.9&nbsp;%</td>
<td class="headerCovTableEntry">1227</td>
<td class="headerCovTableEntry">1201</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryMed">83.6&nbsp;%</td>
<td class="headerCovTableEntry">67</td>
<td class="headerCovTableEntry">56</td>
</tr>
<tr><td><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><img src="../../../glass.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="tests.luau
.gcov.html">tests.luau
</a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=98 height=10 alt="97.9%"><img src="../../../snow.png" width=2 height=10 alt="97.9%"></td></tr></table>
</td>
<td class="coverPerHi">97.9&nbsp;%</td>
<td class="coverNumDflt">1227</td>
<td class="coverNumDflt">1201</td>
<td class="coverPerMed">83.6&nbsp;%</td>
<td class="coverNumDflt">67</td>
<td class="coverNumDflt">56</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,544 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/test/test/tests.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../../index.html">top level</a> - <a href="index.html">jecs/test/test</a> - tests.luau <span style="font-size: 80%;"> (<a href="tests.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">97.9&nbsp;%</td>
<td class="headerCovTableEntry">1227</td>
<td class="headerCovTableEntry">1201</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryMed">83.6&nbsp;%</td>
<td class="headerCovTableEntry">67</td>
<td class="headerCovTableEntry">56</td>
</tr>
<tr><td><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="tests.luau .func.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../../../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L56">gray:58 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L36">green:38 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L52">green_highlight:54 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L114">name:116 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L61">pe:63 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L66">pp:68 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L40">red:42 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L48">red_highlight:50 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L32">white:34 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L28">white_underline:30 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L44">yellow:46 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1028">&lt;anonymous&gt;:1030 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1056">&lt;anonymous&gt;:1058 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1093">&lt;anonymous&gt;:1095 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1158">&lt;anonymous&gt;:1160 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1189">&lt;anonymous&gt;:1191 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L118">&lt;anonymous&gt;:120 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1208">&lt;anonymous&gt;:1210 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1219">&lt;anonymous&gt;:1221 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1227">&lt;anonymous&gt;:1229 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1304">&lt;anonymous&gt;:1306 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1309">&lt;anonymous&gt;:1311 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1349">&lt;anonymous&gt;:1351 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L134">&lt;anonymous&gt;:136 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1370">&lt;anonymous&gt;:1372 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1397">&lt;anonymous&gt;:1399 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1426">&lt;anonymous&gt;:1428 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1524">&lt;anonymous&gt;:1526 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1536">&lt;anonymous&gt;:1538 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1541">&lt;anonymous&gt;:1543 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1552">&lt;anonymous&gt;:1554 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1566">&lt;anonymous&gt;:1568 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1582">&lt;anonymous&gt;:1584 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1596">&lt;anonymous&gt;:1598 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1655">&lt;anonymous&gt;:1657 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1705">&lt;anonymous&gt;:1707 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L172">&lt;anonymous&gt;:174 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1774">&lt;anonymous&gt;:1776 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1782">&lt;anonymous&gt;:1784 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1804">&lt;anonymous&gt;:1806 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1824">&lt;anonymous&gt;:1826 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L185">&lt;anonymous&gt;:187 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L190">&lt;anonymous&gt;:192 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L241">&lt;anonymous&gt;:243 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L257">&lt;anonymous&gt;:259 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L313">&lt;anonymous&gt;:315 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L387">&lt;anonymous&gt;:389 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L436">&lt;anonymous&gt;:438 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L447">&lt;anonymous&gt;:449 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L454">&lt;anonymous&gt;:456 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L476">&lt;anonymous&gt;:478 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L515">&lt;anonymous&gt;:517 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L573">&lt;anonymous&gt;:575 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L597">&lt;anonymous&gt;:599 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L897">&lt;anonymous&gt;:899 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L84">columns:86 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L81">records:83 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L92">tuple:94 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L193">getTargets:195 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1662">updateCooldowns:1664 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L213">setAttacksAndEats:215 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L78">archetype:80 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L87">row:89 </a></td>
<td class="coverFnHi">5</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L71">debug_world_inspect:73 </a></td>
<td class="coverFnHi">7</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L75">tbl:77 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L72">record:74 </a></td>
<td class="coverFnHi">17</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,544 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/test/test/tests.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../../index.html">top level</a> - <a href="index.html">jecs/test/test</a> - tests.luau <span style="font-size: 80%;"> (<a href="tests.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">97.9&nbsp;%</td>
<td class="headerCovTableEntry">1227</td>
<td class="headerCovTableEntry">1201</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryMed">83.6&nbsp;%</td>
<td class="headerCovTableEntry">67</td>
<td class="headerCovTableEntry">56</td>
</tr>
<tr><td><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../../../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="tests.luau .func-c.html"><img src="../../../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1028">&lt;anonymous&gt;:1030 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1056">&lt;anonymous&gt;:1058 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1093">&lt;anonymous&gt;:1095 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1158">&lt;anonymous&gt;:1160 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1189">&lt;anonymous&gt;:1191 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L118">&lt;anonymous&gt;:120 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1208">&lt;anonymous&gt;:1210 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1219">&lt;anonymous&gt;:1221 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1227">&lt;anonymous&gt;:1229 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1304">&lt;anonymous&gt;:1306 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1309">&lt;anonymous&gt;:1311 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1349">&lt;anonymous&gt;:1351 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L134">&lt;anonymous&gt;:136 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1370">&lt;anonymous&gt;:1372 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1397">&lt;anonymous&gt;:1399 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1426">&lt;anonymous&gt;:1428 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1524">&lt;anonymous&gt;:1526 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1536">&lt;anonymous&gt;:1538 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1541">&lt;anonymous&gt;:1543 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1552">&lt;anonymous&gt;:1554 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1566">&lt;anonymous&gt;:1568 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1582">&lt;anonymous&gt;:1584 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1596">&lt;anonymous&gt;:1598 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1655">&lt;anonymous&gt;:1657 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1705">&lt;anonymous&gt;:1707 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L172">&lt;anonymous&gt;:174 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1774">&lt;anonymous&gt;:1776 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1782">&lt;anonymous&gt;:1784 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1804">&lt;anonymous&gt;:1806 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1824">&lt;anonymous&gt;:1826 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L185">&lt;anonymous&gt;:187 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L190">&lt;anonymous&gt;:192 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L241">&lt;anonymous&gt;:243 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L257">&lt;anonymous&gt;:259 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L313">&lt;anonymous&gt;:315 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L387">&lt;anonymous&gt;:389 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L436">&lt;anonymous&gt;:438 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L447">&lt;anonymous&gt;:449 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L454">&lt;anonymous&gt;:456 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L476">&lt;anonymous&gt;:478 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L515">&lt;anonymous&gt;:517 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L573">&lt;anonymous&gt;:575 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L597">&lt;anonymous&gt;:599 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L897">&lt;anonymous&gt;:899 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L78">archetype:80 </a></td>
<td class="coverFnHi">4</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L84">columns:86 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L71">debug_world_inspect:73 </a></td>
<td class="coverFnHi">7</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L193">getTargets:195 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L56">gray:58 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L36">green:38 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L52">green_highlight:54 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L114">name:116 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L61">pe:63 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L66">pp:68 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L72">record:74 </a></td>
<td class="coverFnHi">17</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L81">records:83 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L40">red:42 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L48">red_highlight:50 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L87">row:89 </a></td>
<td class="coverFnHi">5</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L213">setAttacksAndEats:215 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L75">tbl:77 </a></td>
<td class="coverFnHi">12</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L92">tuple:94 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L1662">updateCooldowns:1664 </a></td>
<td class="coverFnHi">2</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L32">white:34 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L28">white_underline:30 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="tests.luau .gcov.html#L44">yellow:46 </a></td>
<td class="coverFnLo">0</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

File diff suppressed because it is too large Load diff

View file

@ -1,138 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/ansi.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - ansi.luau <span style="font-size: 80%;"> (<a href="ansi.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">64.7&nbsp;%</td>
<td class="headerCovTableEntry">17</td>
<td class="headerCovTableEntry">11</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">33.3&nbsp;%</td>
<td class="headerCovTableEntry">9</td>
<td class="headerCovTableEntry">3</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="ansi.luau .func.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L28">gray:30 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L24">green_highlight:26 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L12">red:14 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L20">red_highlight:22 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L4">white:6 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L1">white_underline:2 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L8">green:10 </a></td>
<td class="coverFnHi">10</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L16">yellow:18 </a></td>
<td class="coverFnHi">10</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,138 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/ansi.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - ansi.luau <span style="font-size: 80%;"> (<a href="ansi.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">64.7&nbsp;%</td>
<td class="headerCovTableEntry">17</td>
<td class="headerCovTableEntry">11</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">33.3&nbsp;%</td>
<td class="headerCovTableEntry">9</td>
<td class="headerCovTableEntry">3</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="ansi.luau .func-c.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L28">gray:30 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L8">green:10 </a></td>
<td class="coverFnHi">10</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L24">green_highlight:26 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L12">red:14 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L20">red_highlight:22 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L4">white:6 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L1">white_underline:2 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="ansi.luau .gcov.html#L16">yellow:18 </a></td>
<td class="coverFnHi">10</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,107 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/ansi.luau </title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - ansi.luau <span style="font-size: 80%;"> (source / <a href="ansi.luau .func-c.html">functions</a>)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">64.7&nbsp;%</td>
<td class="headerCovTableEntry">17</td>
<td class="headerCovTableEntry">11</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">33.3&nbsp;%</td>
<td class="headerCovTableEntry">9</td>
<td class="headerCovTableEntry">3</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td>
<pre class="sourceHeading"> Line data Source code</pre>
<pre class="source">
<span id="L1"><span class="lineNum"> 1</span> <span class="tlaGNC tlaBgGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/ansi.luau not found */</span></span>
<span id="L2"><span class="lineNum"> 2</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L3"><span class="lineNum"> 3</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L4"><span class="lineNum"> 4</span> : /* ... */</span>
<span id="L5"><span class="lineNum"> 5</span> : /* ... */</span>
<span id="L6"><span class="lineNum"> 6</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L7"><span class="lineNum"> 7</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L8"><span class="lineNum"> 8</span> : /* ... */</span>
<span id="L9"><span class="lineNum"> 9</span> : /* ... */</span>
<span id="L10"><span class="lineNum"> 10</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L11"><span class="lineNum"> 11</span> <span class="tlaGNC"> 10 : /* ... */</span></span>
<span id="L12"><span class="lineNum"> 12</span> : /* ... */</span>
<span id="L13"><span class="lineNum"> 13</span> : /* ... */</span>
<span id="L14"><span class="lineNum"> 14</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L15"><span class="lineNum"> 15</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L16"><span class="lineNum"> 16</span> : /* ... */</span>
<span id="L17"><span class="lineNum"> 17</span> : /* ... */</span>
<span id="L18"><span class="lineNum"> 18</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L19"><span class="lineNum"> 19</span> <span class="tlaGNC"> 10 : /* ... */</span></span>
<span id="L20"><span class="lineNum"> 20</span> : /* ... */</span>
<span id="L21"><span class="lineNum"> 21</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/ansi.luau not found */</span>
<span id="L22"><span class="lineNum"> 22</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L23"><span class="lineNum"> 23</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L24"><span class="lineNum"> 24</span> : /* ... */</span>
<span id="L25"><span class="lineNum"> 25</span> : /* ... */</span>
<span id="L26"><span class="lineNum"> 26</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L27"><span class="lineNum"> 27</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L28"><span class="lineNum"> 28</span> : /* ... */</span>
<span id="L29"><span class="lineNum"> 29</span> : /* ... */</span>
<span id="L30"><span class="lineNum"> 30</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L31"><span class="lineNum"> 31</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,103 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/entity_visualiser.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - entity_visualiser.luau <span style="font-size: 80%;"> (<a href="entity_visualiser.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">93.3&nbsp;%</td>
<td class="headerCovTableEntry">30</td>
<td class="headerCovTableEntry">28</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryHi">100.0&nbsp;%</td>
<td class="headerCovTableEntry">4</td>
<td class="headerCovTableEntry">4</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="entity_visualiser.luau .func.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L13">components:15 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L4">pe:6 </a></td>
<td class="coverFnHi">10</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L9">name:11 </a></td>
<td class="coverFnHi">16</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,103 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/entity_visualiser.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - entity_visualiser.luau <span style="font-size: 80%;"> (<a href="entity_visualiser.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">93.3&nbsp;%</td>
<td class="headerCovTableEntry">30</td>
<td class="headerCovTableEntry">28</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryHi">100.0&nbsp;%</td>
<td class="headerCovTableEntry">4</td>
<td class="headerCovTableEntry">4</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="entity_visualiser.luau .func-c.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L13">components:15 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L9">name:11 </a></td>
<td class="coverFnHi">16</td>
</tr>
<tr>
<td class="coverFn"><a href="entity_visualiser.luau .gcov.html#L4">pe:6 </a></td>
<td class="coverFnHi">10</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,118 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/entity_visualiser.luau </title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - entity_visualiser.luau <span style="font-size: 80%;"> (source / <a href="entity_visualiser.luau .func-c.html">functions</a>)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryHi">93.3&nbsp;%</td>
<td class="headerCovTableEntry">30</td>
<td class="headerCovTableEntry">28</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryHi">100.0&nbsp;%</td>
<td class="headerCovTableEntry">4</td>
<td class="headerCovTableEntry">4</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td>
<pre class="sourceHeading"> Line data Source code</pre>
<pre class="source">
<span id="L1"><span class="lineNum"> 1</span> <span class="tlaGNC tlaBgGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/entity_visualiser.luau not found */</span></span>
<span id="L2"><span class="lineNum"> 2</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L3"><span class="lineNum"> 3</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L4"><span class="lineNum"> 4</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L5"><span class="lineNum"> 5</span> : /* ... */</span>
<span id="L6"><span class="lineNum"> 6</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L7"><span class="lineNum"> 7</span> <span class="tlaGNC"> 10 : /* ... */</span></span>
<span id="L8"><span class="lineNum"> 8</span> <span class="tlaGNC"> 10 : /* ... */</span></span>
<span id="L9"><span class="lineNum"> 9</span> : /* ... */</span>
<span id="L10"><span class="lineNum"> 10</span> : /* ... */</span>
<span id="L11"><span class="lineNum"> 11</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L12"><span class="lineNum"> 12</span> <span class="tlaGNC"> 16 : /* ... */</span></span>
<span id="L13"><span class="lineNum"> 13</span> : /* ... */</span>
<span id="L14"><span class="lineNum"> 14</span> : /* ... */</span>
<span id="L15"><span class="lineNum"> 15</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L16"><span class="lineNum"> 16</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L17"><span class="lineNum"> 17</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L18"><span class="lineNum"> 18</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L19"><span class="lineNum"> 19</span> : /* ... */</span>
<span id="L20"><span class="lineNum"> 20</span> : /* ... */</span>
<span id="L21"><span class="lineNum"> 21</span> <span class="tlaGNC tlaBgGNC"> 3 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/entity_visualiser.luau not found */</span></span>
<span id="L22"><span class="lineNum"> 22</span> <span class="tlaGNC"> 3 : /* (content generated from line coverage data) */</span></span>
<span id="L23"><span class="lineNum"> 23</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L24"><span class="lineNum"> 24</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L25"><span class="lineNum"> 25</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L26"><span class="lineNum"> 26</span> <span class="tlaGNC"> 8 : /* ... */</span></span>
<span id="L27"><span class="lineNum"> 27</span> <span class="tlaGNC"> 8 : /* ... */</span></span>
<span id="L28"><span class="lineNum"> 28</span> <span class="tlaGNC"> 8 : /* ... */</span></span>
<span id="L29"><span class="lineNum"> 29</span> <span class="tlaGNC"> 8 : /* ... */</span></span>
<span id="L30"><span class="lineNum"> 30</span> : /* ... */</span>
<span id="L31"><span class="lineNum"> 31</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L32"><span class="lineNum"> 32</span> : /* ... */</span>
<span id="L33"><span class="lineNum"> 33</span> <span class="tlaGNC tlaBgGNC"> 8 : /* ... */</span></span>
<span id="L34"><span class="lineNum"> 34</span> <span class="tlaGNC"> 8 : /* ... */</span></span>
<span id="L35"><span class="lineNum"> 35</span> : /* ... */</span>
<span id="L36"><span class="lineNum"> 36</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L37"><span class="lineNum"> 37</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L38"><span class="lineNum"> 38</span> : /* ... */</span>
<span id="L39"><span class="lineNum"> 39</span> : /* ... */</span>
<span id="L40"><span class="lineNum"> 40</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L41"><span class="lineNum"> 41</span> <span class="tlaGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/entity_visualiser.luau not found */</span></span>
<span id="L42"><span class="lineNum"> 42</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,141 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - jecs/tools</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">63.0&nbsp;%</td>
<td class="headerCovTableEntry">508</td>
<td class="headerCovTableEntry">320</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">63.6&nbsp;%</td>
<td class="headerCovTableEntry">55</td>
<td class="headerCovTableEntry">35</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="ansi.luau .gcov.html">ansi.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=65 height=10 alt="64.7%"><img src="../../snow.png" width=35 height=10 alt="64.7%"></td></tr></table>
</td>
<td class="coverPerLo">64.7&nbsp;%</td>
<td class="coverNumDflt">17</td>
<td class="coverNumDflt">11</td>
<td class="coverPerLo">33.3&nbsp;%</td>
<td class="coverNumDflt">9</td>
<td class="coverNumDflt">3</td>
</tr>
<tr>
<td class="coverFile"><a href="testkit.luau .gcov.html">testkit.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=66 height=10 alt="66.1%"><img src="../../snow.png" width=34 height=10 alt="66.1%"></td></tr></table>
</td>
<td class="coverPerLo">66.1&nbsp;%</td>
<td class="coverNumDflt">319</td>
<td class="coverNumDflt">211</td>
<td class="coverPerLo">64.5&nbsp;%</td>
<td class="coverNumDflt">31</td>
<td class="coverNumDflt">20</td>
</tr>
<tr>
<td class="coverFile"><a href="lifetime_tracker.luau .gcov.html">lifetime_tracker.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=49 height=10 alt="49.3%"><img src="../../snow.png" width=51 height=10 alt="49.3%"></td></tr></table>
</td>
<td class="coverPerLo">49.3&nbsp;%</td>
<td class="coverNumDflt">142</td>
<td class="coverNumDflt">70</td>
<td class="coverPerLo">72.7&nbsp;%</td>
<td class="coverNumDflt">11</td>
<td class="coverNumDflt">8</td>
</tr>
<tr>
<td class="coverFile"><a href="entity_visualiser.luau .gcov.html">entity_visualiser.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=93 height=10 alt="93.3%"><img src="../../snow.png" width=7 height=10 alt="93.3%"></td></tr></table>
</td>
<td class="coverPerHi">93.3&nbsp;%</td>
<td class="coverNumDflt">30</td>
<td class="coverNumDflt">28</td>
<td class="coverPerHi">100.0&nbsp;%</td>
<td class="coverNumDflt">4</td>
<td class="coverNumDflt">4</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,141 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - jecs/tools</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">63.0&nbsp;%</td>
<td class="headerCovTableEntry">508</td>
<td class="headerCovTableEntry">320</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">63.6&nbsp;%</td>
<td class="headerCovTableEntry">55</td>
<td class="headerCovTableEntry">35</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><a href="index.html"><img src="../../updown.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></a></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="lifetime_tracker.luau .gcov.html">lifetime_tracker.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=49 height=10 alt="49.3%"><img src="../../snow.png" width=51 height=10 alt="49.3%"></td></tr></table>
</td>
<td class="coverPerLo">49.3&nbsp;%</td>
<td class="coverNumDflt">142</td>
<td class="coverNumDflt">70</td>
<td class="coverPerLo">72.7&nbsp;%</td>
<td class="coverNumDflt">11</td>
<td class="coverNumDflt">8</td>
</tr>
<tr>
<td class="coverFile"><a href="ansi.luau .gcov.html">ansi.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=65 height=10 alt="64.7%"><img src="../../snow.png" width=35 height=10 alt="64.7%"></td></tr></table>
</td>
<td class="coverPerLo">64.7&nbsp;%</td>
<td class="coverNumDflt">17</td>
<td class="coverNumDflt">11</td>
<td class="coverPerLo">33.3&nbsp;%</td>
<td class="coverNumDflt">9</td>
<td class="coverNumDflt">3</td>
</tr>
<tr>
<td class="coverFile"><a href="testkit.luau .gcov.html">testkit.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=66 height=10 alt="66.1%"><img src="../../snow.png" width=34 height=10 alt="66.1%"></td></tr></table>
</td>
<td class="coverPerLo">66.1&nbsp;%</td>
<td class="coverNumDflt">319</td>
<td class="coverNumDflt">211</td>
<td class="coverPerLo">64.5&nbsp;%</td>
<td class="coverNumDflt">31</td>
<td class="coverNumDflt">20</td>
</tr>
<tr>
<td class="coverFile"><a href="entity_visualiser.luau .gcov.html">entity_visualiser.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=93 height=10 alt="93.3%"><img src="../../snow.png" width=7 height=10 alt="93.3%"></td></tr></table>
</td>
<td class="coverPerHi">93.3&nbsp;%</td>
<td class="coverNumDflt">30</td>
<td class="coverNumDflt">28</td>
<td class="coverPerHi">100.0&nbsp;%</td>
<td class="coverNumDflt">4</td>
<td class="coverNumDflt">4</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,141 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - jecs/tools</td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">63.0&nbsp;%</td>
<td class="headerCovTableEntry">508</td>
<td class="headerCovTableEntry">320</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">63.6&nbsp;%</td>
<td class="headerCovTableEntry">55</td>
<td class="headerCovTableEntry">35</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table width="80%" cellpadding=1 cellspacing=1 border=0>
<tr>
<td width="40%"><br></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
<td width="8%"></td>
</tr>
<tr>
<td class="tableHead" rowspan=2>Filename <span title="Click to sort table by file name" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by file name" title="Click to sort table by file name" border=0></span></td>
<td class="tableHead" colspan=4>Line Coverage <span title="Click to sort table by line coverage" class="tableHeadSort"><a href="index-sort-l.html"><img src="../../updown.png" width=10 height=14 alt="Sort by line coverage" title="Click to sort table by line coverage" border=0></a></span></td>
<td class="tableHead" colspan=3>Function Coverage <span title="Click to sort table by function coverage" class="tableHeadSort"><a href="index-sort-f.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function coverage" title="Click to sort table by function coverage" border=0></a></span></td>
</tr>
<tr>
<td class="tableHead" colspan=2> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
<td class="tableHead"> Rate</td>
<td class="tableHead"> Total</td>
<td class="tableHead"> Hit</td>
</tr>
<tr>
<td class="coverFile"><a href="ansi.luau .gcov.html">ansi.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=65 height=10 alt="64.7%"><img src="../../snow.png" width=35 height=10 alt="64.7%"></td></tr></table>
</td>
<td class="coverPerLo">64.7&nbsp;%</td>
<td class="coverNumDflt">17</td>
<td class="coverNumDflt">11</td>
<td class="coverPerLo">33.3&nbsp;%</td>
<td class="coverNumDflt">9</td>
<td class="coverNumDflt">3</td>
</tr>
<tr>
<td class="coverFile"><a href="entity_visualiser.luau .gcov.html">entity_visualiser.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=93 height=10 alt="93.3%"><img src="../../snow.png" width=7 height=10 alt="93.3%"></td></tr></table>
</td>
<td class="coverPerHi">93.3&nbsp;%</td>
<td class="coverNumDflt">30</td>
<td class="coverNumDflt">28</td>
<td class="coverPerHi">100.0&nbsp;%</td>
<td class="coverNumDflt">4</td>
<td class="coverNumDflt">4</td>
</tr>
<tr>
<td class="coverFile"><a href="lifetime_tracker.luau .gcov.html">lifetime_tracker.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=49 height=10 alt="49.3%"><img src="../../snow.png" width=51 height=10 alt="49.3%"></td></tr></table>
</td>
<td class="coverPerLo">49.3&nbsp;%</td>
<td class="coverNumDflt">142</td>
<td class="coverNumDflt">70</td>
<td class="coverPerLo">72.7&nbsp;%</td>
<td class="coverNumDflt">11</td>
<td class="coverNumDflt">8</td>
</tr>
<tr>
<td class="coverFile"><a href="testkit.luau .gcov.html">testkit.luau </a></td>
<td class="coverBar" align="center">
<table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../ruby.png" width=66 height=10 alt="66.1%"><img src="../../snow.png" width=34 height=10 alt="66.1%"></td></tr></table>
</td>
<td class="coverPerLo">66.1&nbsp;%</td>
<td class="coverNumDflt">319</td>
<td class="coverNumDflt">211</td>
<td class="coverPerLo">64.5&nbsp;%</td>
<td class="coverNumDflt">31</td>
<td class="coverNumDflt">20</td>
</tr>
</table>
</center>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,152 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/lifetime_tracker.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - lifetime_tracker.luau <span style="font-size: 80%;"> (<a href="lifetime_tracker.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">49.3&nbsp;%</td>
<td class="headerCovTableEntry">142</td>
<td class="headerCovTableEntry">70</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">72.7&nbsp;%</td>
<td class="headerCovTableEntry">11</td>
<td class="headerCovTableEntry">8</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="lifetime_tracker.luau .func.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L133">&lt;anonymous&gt;:135 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L87">&lt;anonymous&gt;:89 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L24">name:26 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L162">&lt;anonymous&gt;:164 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L173">&lt;anonymous&gt;:175 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L60">&lt;anonymous&gt;:62 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L34">lifetime_tracker_add:36 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L46">&lt;anonymous&gt;:48 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L10">print_centered_entity:12 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L28">pad:30 </a></td>
<td class="coverFnHi">5</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,152 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/lifetime_tracker.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - lifetime_tracker.luau <span style="font-size: 80%;"> (<a href="lifetime_tracker.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">49.3&nbsp;%</td>
<td class="headerCovTableEntry">142</td>
<td class="headerCovTableEntry">70</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">72.7&nbsp;%</td>
<td class="headerCovTableEntry">11</td>
<td class="headerCovTableEntry">8</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="lifetime_tracker.luau .func-c.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L133">&lt;anonymous&gt;:135 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L162">&lt;anonymous&gt;:164 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L173">&lt;anonymous&gt;:175 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L46">&lt;anonymous&gt;:48 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L60">&lt;anonymous&gt;:62 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L87">&lt;anonymous&gt;:89 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L34">lifetime_tracker_add:36 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L24">name:26 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L28">pad:30 </a></td>
<td class="coverFnHi">5</td>
</tr>
<tr>
<td class="coverFn"><a href="lifetime_tracker.luau .gcov.html#L10">print_centered_entity:12 </a></td>
<td class="coverFnHi">3</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,292 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/lifetime_tracker.luau </title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - lifetime_tracker.luau <span style="font-size: 80%;"> (source / <a href="lifetime_tracker.luau .func-c.html">functions</a>)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">49.3&nbsp;%</td>
<td class="headerCovTableEntry">142</td>
<td class="headerCovTableEntry">70</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">72.7&nbsp;%</td>
<td class="headerCovTableEntry">11</td>
<td class="headerCovTableEntry">8</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td>
<pre class="sourceHeading"> Line data Source code</pre>
<pre class="source">
<span id="L1"><span class="lineNum"> 1</span> <span class="tlaGNC tlaBgGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L2"><span class="lineNum"> 2</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L3"><span class="lineNum"> 3</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L4"><span class="lineNum"> 4</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L5"><span class="lineNum"> 5</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L6"><span class="lineNum"> 6</span> : /* ... */</span>
<span id="L7"><span class="lineNum"> 7</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L8"><span class="lineNum"> 8</span> : /* ... */</span>
<span id="L9"><span class="lineNum"> 9</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L10"><span class="lineNum"> 10</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L11"><span class="lineNum"> 11</span> : /* ... */</span>
<span id="L12"><span class="lineNum"> 12</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L13"><span class="lineNum"> 13</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L14"><span class="lineNum"> 14</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L15"><span class="lineNum"> 15</span> : /* ... */</span>
<span id="L16"><span class="lineNum"> 16</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L17"><span class="lineNum"> 17</span> : /* ... */</span>
<span id="L18"><span class="lineNum"> 18</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L19"><span class="lineNum"> 19</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L20"><span class="lineNum"> 20</span> : /* ... */</span>
<span id="L21"><span class="lineNum"> 21</span> <span class="tlaGNC"> 3 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L22"><span class="lineNum"> 22</span> : /* (content generated from line coverage data) */</span>
<span id="L23"><span class="lineNum"> 23</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L24"><span class="lineNum"> 24</span> : /* ... */</span>
<span id="L25"><span class="lineNum"> 25</span> : /* ... */</span>
<span id="L26"><span class="lineNum"> 26</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L27"><span class="lineNum"> 27</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L28"><span class="lineNum"> 28</span> : /* ... */</span>
<span id="L29"><span class="lineNum"> 29</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L30"><span class="lineNum"> 30</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L31"><span class="lineNum"> 31</span> <span class="tlaGNC"> 5 : /* ... */</span></span>
<span id="L32"><span class="lineNum"> 32</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L33"><span class="lineNum"> 33</span> : /* ... */</span>
<span id="L34"><span class="lineNum"> 34</span> : /* ... */</span>
<span id="L35"><span class="lineNum"> 35</span> : /* ... */</span>
<span id="L36"><span class="lineNum"> 36</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L37"><span class="lineNum"> 37</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L38"><span class="lineNum"> 38</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L39"><span class="lineNum"> 39</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L40"><span class="lineNum"> 40</span> : /* ... */</span>
<span id="L41"><span class="lineNum"> 41</span> <span class="tlaGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L42"><span class="lineNum"> 42</span> : /* (content generated from line coverage data) */</span>
<span id="L43"><span class="lineNum"> 43</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L44"><span class="lineNum"> 44</span> : /* ... */</span>
<span id="L45"><span class="lineNum"> 45</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L46"><span class="lineNum"> 46</span> : /* ... */</span>
<span id="L47"><span class="lineNum"> 47</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L48"><span class="lineNum"> 48</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L49"><span class="lineNum"> 49</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L50"><span class="lineNum"> 50</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L51"><span class="lineNum"> 51</span> : /* ... */</span>
<span id="L52"><span class="lineNum"> 52</span> <span class="tlaGNC tlaBgGNC"> 3 : /* ... */</span></span>
<span id="L53"><span class="lineNum"> 53</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L54"><span class="lineNum"> 54</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L55"><span class="lineNum"> 55</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L56"><span class="lineNum"> 56</span> : /* ... */</span>
<span id="L57"><span class="lineNum"> 57</span> <span class="tlaGNC tlaBgGNC"> 3 : /* ... */</span></span>
<span id="L58"><span class="lineNum"> 58</span> : /* ... */</span>
<span id="L59"><span class="lineNum"> 59</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L60"><span class="lineNum"> 60</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L61"><span class="lineNum"> 61</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span>
<span id="L62"><span class="lineNum"> 62</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L63"><span class="lineNum"> 63</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L64"><span class="lineNum"> 64</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L65"><span class="lineNum"> 65</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L66"><span class="lineNum"> 66</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L67"><span class="lineNum"> 67</span> : /* ... */</span>
<span id="L68"><span class="lineNum"> 68</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L69"><span class="lineNum"> 69</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L70"><span class="lineNum"> 70</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L71"><span class="lineNum"> 71</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L72"><span class="lineNum"> 72</span> <span class="tlaGNC"> 2 : /* ... */</span></span>
<span id="L73"><span class="lineNum"> 73</span> <span class="tlaGNC"> 2 : /* ... */</span></span>
<span id="L74"><span class="lineNum"> 74</span> <span class="tlaGNC"> 2 : /* ... */</span></span>
<span id="L75"><span class="lineNum"> 75</span> : /* ... */</span>
<span id="L76"><span class="lineNum"> 76</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L77"><span class="lineNum"> 77</span> : /* ... */</span>
<span id="L78"><span class="lineNum"> 78</span> : /* ... */</span>
<span id="L79"><span class="lineNum"> 79</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L80"><span class="lineNum"> 80</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L81"><span class="lineNum"> 81</span> <span class="tlaGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L82"><span class="lineNum"> 82</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L83"><span class="lineNum"> 83</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L84"><span class="lineNum"> 84</span> : /* ... */</span>
<span id="L85"><span class="lineNum"> 85</span> : /* ... */</span>
<span id="L86"><span class="lineNum"> 86</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L87"><span class="lineNum"> 87</span> : /* ... */</span>
<span id="L88"><span class="lineNum"> 88</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L89"><span class="lineNum"> 89</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L90"><span class="lineNum"> 90</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L91"><span class="lineNum"> 91</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L92"><span class="lineNum"> 92</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L93"><span class="lineNum"> 93</span> : /* ... */</span>
<span id="L94"><span class="lineNum"> 94</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L95"><span class="lineNum"> 95</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L96"><span class="lineNum"> 96</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L97"><span class="lineNum"> 97</span> : /* ... */</span>
<span id="L98"><span class="lineNum"> 98</span> : /* ... */</span>
<span id="L99"><span class="lineNum"> 99</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L100"><span class="lineNum"> 100</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L101"><span class="lineNum"> 101</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L102"><span class="lineNum"> 102</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L103"><span class="lineNum"> 103</span> : /* ... */</span>
<span id="L104"><span class="lineNum"> 104</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L105"><span class="lineNum"> 105</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L106"><span class="lineNum"> 106</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L107"><span class="lineNum"> 107</span> : /* ... */</span>
<span id="L108"><span class="lineNum"> 108</span> : /* ... */</span>
<span id="L109"><span class="lineNum"> 109</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L110"><span class="lineNum"> 110</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L111"><span class="lineNum"> 111</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L112"><span class="lineNum"> 112</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L113"><span class="lineNum"> 113</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L114"><span class="lineNum"> 114</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L115"><span class="lineNum"> 115</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L116"><span class="lineNum"> 116</span> : /* ... */</span>
<span id="L117"><span class="lineNum"> 117</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L118"><span class="lineNum"> 118</span> : /* ... */</span>
<span id="L119"><span class="lineNum"> 119</span> : /* ... */</span>
<span id="L120"><span class="lineNum"> 120</span> : /* ... */</span>
<span id="L121"><span class="lineNum"> 121</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L122"><span class="lineNum"> 122</span> : /* (content generated from line coverage data) */</span>
<span id="L123"><span class="lineNum"> 123</span> : /* ... */</span>
<span id="L124"><span class="lineNum"> 124</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L125"><span class="lineNum"> 125</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L126"><span class="lineNum"> 126</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L127"><span class="lineNum"> 127</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L128"><span class="lineNum"> 128</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L129"><span class="lineNum"> 129</span> : /* ... */</span>
<span id="L130"><span class="lineNum"> 130</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L131"><span class="lineNum"> 131</span> : /* ... */</span>
<span id="L132"><span class="lineNum"> 132</span> : /* ... */</span>
<span id="L133"><span class="lineNum"> 133</span> : /* ... */</span>
<span id="L134"><span class="lineNum"> 134</span> : /* ... */</span>
<span id="L135"><span class="lineNum"> 135</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L136"><span class="lineNum"> 136</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L137"><span class="lineNum"> 137</span> : /* ... */</span>
<span id="L138"><span class="lineNum"> 138</span> : /* ... */</span>
<span id="L139"><span class="lineNum"> 139</span> : /* ... */</span>
<span id="L140"><span class="lineNum"> 140</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L141"><span class="lineNum"> 141</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L142"><span class="lineNum"> 142</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L143"><span class="lineNum"> 143</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L144"><span class="lineNum"> 144</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L145"><span class="lineNum"> 145</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L146"><span class="lineNum"> 146</span> : /* ... */</span>
<span id="L147"><span class="lineNum"> 147</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L148"><span class="lineNum"> 148</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L149"><span class="lineNum"> 149</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L150"><span class="lineNum"> 150</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L151"><span class="lineNum"> 151</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L152"><span class="lineNum"> 152</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L153"><span class="lineNum"> 153</span> : /* ... */</span>
<span id="L154"><span class="lineNum"> 154</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L155"><span class="lineNum"> 155</span> : /* ... */</span>
<span id="L156"><span class="lineNum"> 156</span> : /* ... */</span>
<span id="L157"><span class="lineNum"> 157</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L158"><span class="lineNum"> 158</span> : /* ... */</span>
<span id="L159"><span class="lineNum"> 159</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L160"><span class="lineNum"> 160</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L161"><span class="lineNum"> 161</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span>
<span id="L162"><span class="lineNum"> 162</span> <span class="tlaGNC tlaBgGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L163"><span class="lineNum"> 163</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L164"><span class="lineNum"> 164</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L165"><span class="lineNum"> 165</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L166"><span class="lineNum"> 166</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L167"><span class="lineNum"> 167</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L168"><span class="lineNum"> 168</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L169"><span class="lineNum"> 169</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L170"><span class="lineNum"> 170</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L171"><span class="lineNum"> 171</span> : /* ... */</span>
<span id="L172"><span class="lineNum"> 172</span> : /* ... */</span>
<span id="L173"><span class="lineNum"> 173</span> : /* ... */</span>
<span id="L174"><span class="lineNum"> 174</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L175"><span class="lineNum"> 175</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L176"><span class="lineNum"> 176</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L177"><span class="lineNum"> 177</span> : /* ... */</span>
<span id="L178"><span class="lineNum"> 178</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L179"><span class="lineNum"> 179</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L180"><span class="lineNum"> 180</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L181"><span class="lineNum"> 181</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L182"><span class="lineNum"> 182</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L183"><span class="lineNum"> 183</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L184"><span class="lineNum"> 184</span> : /* ... */</span>
<span id="L185"><span class="lineNum"> 185</span> : /* ... */</span>
<span id="L186"><span class="lineNum"> 186</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L187"><span class="lineNum"> 187</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L188"><span class="lineNum"> 188</span> : /* ... */</span>
<span id="L189"><span class="lineNum"> 189</span> : /* ... */</span>
<span id="L190"><span class="lineNum"> 190</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L191"><span class="lineNum"> 191</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L192"><span class="lineNum"> 192</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L193"><span class="lineNum"> 193</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L194"><span class="lineNum"> 194</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L195"><span class="lineNum"> 195</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L196"><span class="lineNum"> 196</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L197"><span class="lineNum"> 197</span> : /* ... */</span>
<span id="L198"><span class="lineNum"> 198</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L199"><span class="lineNum"> 199</span> : /* ... */</span>
<span id="L200"><span class="lineNum"> 200</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L201"><span class="lineNum"> 201</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/lifetime_tracker.luau not found */</span></span>
<span id="L202"><span class="lineNum"> 202</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L203"><span class="lineNum"> 203</span> : /* ... */</span>
<span id="L204"><span class="lineNum"> 204</span> : /* ... */</span>
<span id="L205"><span class="lineNum"> 205</span> : /* ... */</span>
<span id="L206"><span class="lineNum"> 206</span> : /* ... */</span>
<span id="L207"><span class="lineNum"> 207</span> : /* ... */</span>
<span id="L208"><span class="lineNum"> 208</span> : /* ... */</span>
<span id="L209"><span class="lineNum"> 209</span> : /* ... */</span>
<span id="L210"><span class="lineNum"> 210</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L211"><span class="lineNum"> 211</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L212"><span class="lineNum"> 212</span> : /* ... */</span>
<span id="L213"><span class="lineNum"> 213</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L214"><span class="lineNum"> 214</span> : /* ... */</span>
<span id="L215"><span class="lineNum"> 215</span> : /* ... */</span>
<span id="L216"><span class="lineNum"> 216</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,292 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/testkit.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - testkit.luau <span style="font-size: 80%;"> (<a href="testkit.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">66.1&nbsp;%</td>
<td class="headerCovTableEntry">319</td>
<td class="headerCovTableEntry">211</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">64.5&nbsp;%</td>
<td class="headerCovTableEntry">31</td>
<td class="headerCovTableEntry">20</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><a href="testkit.luau .func.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></a></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></span></td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L238">&lt;anonymous&gt;:240 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L348">&lt;anonymous&gt;:350 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L256">FOCUS:258 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L494">deep_eq:496 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L543">disable_formatting:545 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L33">green_highlight:35 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L390">print2:392 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L29">red_highlight:31 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L474">shallow_eq:476 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L395">tos:397 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L9">white_underline:11 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L267">FINISH:269 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L308">SKIP:310 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L324">START:326 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L539">benchmark:541 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L527">test:529 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L336">BENCH:338 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L46">convert_units:48 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L366">round:368 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L181">CHECK_EXPECT_ERR:183 </a></td>
<td class="coverFnHi">9</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L222">TEST:224 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L129">output_test_result:131 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L13">white:15 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L167">CASE:169 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L41">orange:43 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L25">yellow:27 </a></td>
<td class="coverFnHi">75</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L17">green:19 </a></td>
<td class="coverFnHi">76</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L37">gray:39 </a></td>
<td class="coverFnHi">83</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L21">red:23 </a></td>
<td class="coverFnHi">144</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L199">CHECK:201 </a></td>
<td class="coverFnHi">1173</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,292 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/testkit.luau - functions</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - testkit.luau <span style="font-size: 80%;"> (<a href="testkit.luau .gcov.html">source</a> / functions)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">66.1&nbsp;%</td>
<td class="headerCovTableEntry">319</td>
<td class="headerCovTableEntry">211</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">64.5&nbsp;%</td>
<td class="headerCovTableEntry">31</td>
<td class="headerCovTableEntry">20</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<center>
<table cellpadding=1 cellspacing=1 border=0>
<tr><td><br></td></tr>
<tr>
<td class="tableHead">Function Name <span title="Click to sort table by function name" class="tableHeadSort"><img src="../../glass.png" width=10 height=14 alt="Sort by function name" title="Click to sort table by function name" border=0></span></td>
<td class="tableHead">Hit count <span title="Click to sort table by function hit count" class="tableHeadSort"><a href="testkit.luau .func-c.html"><img src="../../updown.png" width=10 height=14 alt="Sort by function hit count" title="Click to sort table by function hit count" border=0></a></span></td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L238">&lt;anonymous&gt;:240 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L348">&lt;anonymous&gt;:350 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L1">&lt;main&gt; </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L336">BENCH:338 </a></td>
<td class="coverFnHi">3</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L167">CASE:169 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L199">CHECK:201 </a></td>
<td class="coverFnHi">1173</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L181">CHECK_EXPECT_ERR:183 </a></td>
<td class="coverFnHi">9</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L267">FINISH:269 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L256">FOCUS:258 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L308">SKIP:310 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L324">START:326 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L222">TEST:224 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L539">benchmark:541 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L46">convert_units:48 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L494">deep_eq:496 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L543">disable_formatting:545 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L37">gray:39 </a></td>
<td class="coverFnHi">83</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L17">green:19 </a></td>
<td class="coverFnHi">76</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L33">green_highlight:35 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L41">orange:43 </a></td>
<td class="coverFnHi">72</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L129">output_test_result:131 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L390">print2:392 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L21">red:23 </a></td>
<td class="coverFnHi">144</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L29">red_highlight:31 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L366">round:368 </a></td>
<td class="coverFnHi">6</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L474">shallow_eq:476 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L527">test:529 </a></td>
<td class="coverFnHi">1</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L395">tos:397 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L13">white:15 </a></td>
<td class="coverFnHi">24</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L9">white_underline:11 </a></td>
<td class="coverFnLo">0</td>
</tr>
<tr>
<td class="coverFn"><a href="testkit.luau .gcov.html#L25">yellow:27 </a></td>
<td class="coverFnHi">75</td>
</tr>
</table>
<br>
</center>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

View file

@ -1,630 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LCOV - coverage.out - jecs/tools/testkit.luau </title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LCOV - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td width="10%" class="headerItem">Current view:</td>
<td width="10%" class="headerValue"><a href="../../index.html">top level</a> - <a href="index.html">jecs/tools</a> - testkit.luau <span style="font-size: 80%;"> (source / <a href="testkit.luau .func-c.html">functions</a>)</span></td>
<td width="5%"></td>
<td width="5%"></td>
<td width="5%" class="headerCovTableHead">Coverage</td>
<td width="5%" class="headerCovTableHead" title="Covered + Uncovered code">Total</td>
<td width="5%" class="headerCovTableHead" title="Exercised code only">Hit</td>
</tr>
<tr>
<td class="headerItem">Test:</td>
<td class="headerValue">coverage.out</td>
<td></td>
<td class="headerItem">Lines:</td>
<td class="headerCovTableEntryLo">66.1&nbsp;%</td>
<td class="headerCovTableEntry">319</td>
<td class="headerCovTableEntry">211</td>
</tr>
<tr>
<td class="headerItem">Test Date:</td>
<td class="headerValue">2025-03-27 03:52:25</td>
<td></td>
<td class="headerItem">Functions:</td>
<td class="headerCovTableEntryLo">64.5&nbsp;%</td>
<td class="headerCovTableEntry">31</td>
<td class="headerCovTableEntry">20</td>
</tr>
<tr><td><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td>
<pre class="sourceHeading"> Line data Source code</pre>
<pre class="source">
<span id="L1"><span class="lineNum"> 1</span> <span class="tlaGNC tlaBgGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L2"><span class="lineNum"> 2</span> : /* (content generated from line coverage data) */</span>
<span id="L3"><span class="lineNum"> 3</span> : /* ... */</span>
<span id="L4"><span class="lineNum"> 4</span> : /* ... */</span>
<span id="L5"><span class="lineNum"> 5</span> : /* ... */</span>
<span id="L6"><span class="lineNum"> 6</span> : /* ... */</span>
<span id="L7"><span class="lineNum"> 7</span> : /* ... */</span>
<span id="L8"><span class="lineNum"> 8</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L9"><span class="lineNum"> 9</span> : /* ... */</span>
<span id="L10"><span class="lineNum"> 10</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L11"><span class="lineNum"> 11</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L12"><span class="lineNum"> 12</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L13"><span class="lineNum"> 13</span> : /* ... */</span>
<span id="L14"><span class="lineNum"> 14</span> : /* ... */</span>
<span id="L15"><span class="lineNum"> 15</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L16"><span class="lineNum"> 16</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L17"><span class="lineNum"> 17</span> : /* ... */</span>
<span id="L18"><span class="lineNum"> 18</span> : /* ... */</span>
<span id="L19"><span class="lineNum"> 19</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L20"><span class="lineNum"> 20</span> <span class="tlaGNC"> 76 : /* ... */</span></span>
<span id="L21"><span class="lineNum"> 21</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L22"><span class="lineNum"> 22</span> : /* (content generated from line coverage data) */</span>
<span id="L23"><span class="lineNum"> 23</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L24"><span class="lineNum"> 24</span> <span class="tlaGNC"> 144 : /* ... */</span></span>
<span id="L25"><span class="lineNum"> 25</span> : /* ... */</span>
<span id="L26"><span class="lineNum"> 26</span> : /* ... */</span>
<span id="L27"><span class="lineNum"> 27</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L28"><span class="lineNum"> 28</span> <span class="tlaGNC"> 75 : /* ... */</span></span>
<span id="L29"><span class="lineNum"> 29</span> : /* ... */</span>
<span id="L30"><span class="lineNum"> 30</span> : /* ... */</span>
<span id="L31"><span class="lineNum"> 31</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L32"><span class="lineNum"> 32</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L33"><span class="lineNum"> 33</span> : /* ... */</span>
<span id="L34"><span class="lineNum"> 34</span> : /* ... */</span>
<span id="L35"><span class="lineNum"> 35</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L36"><span class="lineNum"> 36</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L37"><span class="lineNum"> 37</span> : /* ... */</span>
<span id="L38"><span class="lineNum"> 38</span> : /* ... */</span>
<span id="L39"><span class="lineNum"> 39</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L40"><span class="lineNum"> 40</span> <span class="tlaGNC"> 83 : /* ... */</span></span>
<span id="L41"><span class="lineNum"> 41</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L42"><span class="lineNum"> 42</span> : /* (content generated from line coverage data) */</span>
<span id="L43"><span class="lineNum"> 43</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L44"><span class="lineNum"> 44</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L45"><span class="lineNum"> 45</span> : /* ... */</span>
<span id="L46"><span class="lineNum"> 46</span> : /* ... */</span>
<span id="L47"><span class="lineNum"> 47</span> : /* ... */</span>
<span id="L48"><span class="lineNum"> 48</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L49"><span class="lineNum"> 49</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L50"><span class="lineNum"> 50</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L51"><span class="lineNum"> 51</span> : /* ... */</span>
<span id="L52"><span class="lineNum"> 52</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L53"><span class="lineNum"> 53</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L54"><span class="lineNum"> 54</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L55"><span class="lineNum"> 55</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L56"><span class="lineNum"> 56</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L57"><span class="lineNum"> 57</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L58"><span class="lineNum"> 58</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L59"><span class="lineNum"> 59</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L60"><span class="lineNum"> 60</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L61"><span class="lineNum"> 61</span> <span class="tlaGNC"> 6 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L62"><span class="lineNum"> 62</span> : /* (content generated from line coverage data) */</span>
<span id="L63"><span class="lineNum"> 63</span> : /* ... */</span>
<span id="L64"><span class="lineNum"> 64</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L65"><span class="lineNum"> 65</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L66"><span class="lineNum"> 66</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L67"><span class="lineNum"> 67</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L68"><span class="lineNum"> 68</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L69"><span class="lineNum"> 69</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L70"><span class="lineNum"> 70</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L71"><span class="lineNum"> 71</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L72"><span class="lineNum"> 72</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L73"><span class="lineNum"> 73</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L74"><span class="lineNum"> 74</span> : /* ... */</span>
<span id="L75"><span class="lineNum"> 75</span> : /* ... */</span>
<span id="L76"><span class="lineNum"> 76</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L77"><span class="lineNum"> 77</span> : /* ... */</span>
<span id="L78"><span class="lineNum"> 78</span> <span class="tlaGNC"> 7 : /* ... */</span></span>
<span id="L79"><span class="lineNum"> 79</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L80"><span class="lineNum"> 80</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L81"><span class="lineNum"> 81</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L82"><span class="lineNum"> 82</span> : /* (content generated from line coverage data) */</span>
<span id="L83"><span class="lineNum"> 83</span> <span class="tlaGNC"> 11 : /* ... */</span></span>
<span id="L84"><span class="lineNum"> 84</span> <span class="tlaGNC"> 7 : /* ... */</span></span>
<span id="L85"><span class="lineNum"> 85</span> <span class="tlaGNC"> 7 : /* ... */</span></span>
<span id="L86"><span class="lineNum"> 86</span> : /* ... */</span>
<span id="L87"><span class="lineNum"> 87</span> : /* ... */</span>
<span id="L88"><span class="lineNum"> 88</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L89"><span class="lineNum"> 89</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L90"><span class="lineNum"> 90</span> <span class="tlaGNC"> 5 : /* ... */</span></span>
<span id="L91"><span class="lineNum"> 91</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L92"><span class="lineNum"> 92</span> <span class="tlaGNC"> 4 : /* ... */</span></span>
<span id="L93"><span class="lineNum"> 93</span> <span class="tlaGNC"> 2 : /* ... */</span></span>
<span id="L94"><span class="lineNum"> 94</span> : /* ... */</span>
<span id="L95"><span class="lineNum"> 95</span> : /* ... */</span>
<span id="L96"><span class="lineNum"> 96</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L97"><span class="lineNum"> 97</span> : /* ... */</span>
<span id="L98"><span class="lineNum"> 98</span> : /* ... */</span>
<span id="L99"><span class="lineNum"> 99</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L100"><span class="lineNum"> 100</span> : /* ... */</span>
<span id="L101"><span class="lineNum"> 101</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L102"><span class="lineNum"> 102</span> : /* (content generated from line coverage data) */</span>
<span id="L103"><span class="lineNum"> 103</span> : /* ... */</span>
<span id="L104"><span class="lineNum"> 104</span> : /* ... */</span>
<span id="L105"><span class="lineNum"> 105</span> : /* ... */</span>
<span id="L106"><span class="lineNum"> 106</span> : /* ... */</span>
<span id="L107"><span class="lineNum"> 107</span> : /* ... */</span>
<span id="L108"><span class="lineNum"> 108</span> : /* ... */</span>
<span id="L109"><span class="lineNum"> 109</span> : /* ... */</span>
<span id="L110"><span class="lineNum"> 110</span> : /* ... */</span>
<span id="L111"><span class="lineNum"> 111</span> : /* ... */</span>
<span id="L112"><span class="lineNum"> 112</span> : /* ... */</span>
<span id="L113"><span class="lineNum"> 113</span> : /* ... */</span>
<span id="L114"><span class="lineNum"> 114</span> : /* ... */</span>
<span id="L115"><span class="lineNum"> 115</span> : /* ... */</span>
<span id="L116"><span class="lineNum"> 116</span> : /* ... */</span>
<span id="L117"><span class="lineNum"> 117</span> : /* ... */</span>
<span id="L118"><span class="lineNum"> 118</span> : /* ... */</span>
<span id="L119"><span class="lineNum"> 119</span> : /* ... */</span>
<span id="L120"><span class="lineNum"> 120</span> : /* ... */</span>
<span id="L121"><span class="lineNum"> 121</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L122"><span class="lineNum"> 122</span> : /* (content generated from line coverage data) */</span>
<span id="L123"><span class="lineNum"> 123</span> : /* ... */</span>
<span id="L124"><span class="lineNum"> 124</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L125"><span class="lineNum"> 125</span> : /* ... */</span>
<span id="L126"><span class="lineNum"> 126</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L127"><span class="lineNum"> 127</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L128"><span class="lineNum"> 128</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L129"><span class="lineNum"> 129</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L130"><span class="lineNum"> 130</span> : /* ... */</span>
<span id="L131"><span class="lineNum"> 131</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L132"><span class="lineNum"> 132</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L133"><span class="lineNum"> 133</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L134"><span class="lineNum"> 134</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L135"><span class="lineNum"> 135</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L136"><span class="lineNum"> 136</span> : /* ... */</span>
<span id="L137"><span class="lineNum"> 137</span> : /* ... */</span>
<span id="L138"><span class="lineNum"> 138</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L139"><span class="lineNum"> 139</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L140"><span class="lineNum"> 140</span> : /* ... */</span>
<span id="L141"><span class="lineNum"> 141</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L142"><span class="lineNum"> 142</span> : /* (content generated from line coverage data) */</span>
<span id="L143"><span class="lineNum"> 143</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L144"><span class="lineNum"> 144</span> : /* ... */</span>
<span id="L145"><span class="lineNum"> 145</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L146"><span class="lineNum"> 146</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L147"><span class="lineNum"> 147</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L148"><span class="lineNum"> 148</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L149"><span class="lineNum"> 149</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L150"><span class="lineNum"> 150</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L151"><span class="lineNum"> 151</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L152"><span class="lineNum"> 152</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L153"><span class="lineNum"> 153</span> : /* ... */</span>
<span id="L154"><span class="lineNum"> 154</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L155"><span class="lineNum"> 155</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L156"><span class="lineNum"> 156</span> : /* ... */</span>
<span id="L157"><span class="lineNum"> 157</span> : /* ... */</span>
<span id="L158"><span class="lineNum"> 158</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L159"><span class="lineNum"> 159</span> : /* ... */</span>
<span id="L160"><span class="lineNum"> 160</span> : /* ... */</span>
<span id="L161"><span class="lineNum"> 161</span> <span class="tlaGNC"> 24 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L162"><span class="lineNum"> 162</span> <span class="tlaUNC tlaBgUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L163"><span class="lineNum"> 163</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L164"><span class="lineNum"> 164</span> : /* ... */</span>
<span id="L165"><span class="lineNum"> 165</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L166"><span class="lineNum"> 166</span> : /* ... */</span>
<span id="L167"><span class="lineNum"> 167</span> : /* ... */</span>
<span id="L168"><span class="lineNum"> 168</span> : /* ... */</span>
<span id="L169"><span class="lineNum"> 169</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L170"><span class="lineNum"> 170</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L171"><span class="lineNum"> 171</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L172"><span class="lineNum"> 172</span> : /* ... */</span>
<span id="L173"><span class="lineNum"> 173</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L174"><span class="lineNum"> 174</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L175"><span class="lineNum"> 175</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L176"><span class="lineNum"> 176</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L177"><span class="lineNum"> 177</span> : /* ... */</span>
<span id="L178"><span class="lineNum"> 178</span> : /* ... */</span>
<span id="L179"><span class="lineNum"> 179</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L180"><span class="lineNum"> 180</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L181"><span class="lineNum"> 181</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L182"><span class="lineNum"> 182</span> : /* (content generated from line coverage data) */</span>
<span id="L183"><span class="lineNum"> 183</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L184"><span class="lineNum"> 184</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L185"><span class="lineNum"> 185</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L186"><span class="lineNum"> 186</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L187"><span class="lineNum"> 187</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L188"><span class="lineNum"> 188</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L189"><span class="lineNum"> 189</span> : /* ... */</span>
<span id="L190"><span class="lineNum"> 190</span> <span class="tlaGNC tlaBgGNC"> 9 : /* ... */</span></span>
<span id="L191"><span class="lineNum"> 191</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L192"><span class="lineNum"> 192</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L193"><span class="lineNum"> 193</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L194"><span class="lineNum"> 194</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L195"><span class="lineNum"> 195</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L196"><span class="lineNum"> 196</span> : /* ... */</span>
<span id="L197"><span class="lineNum"> 197</span> <span class="tlaGNC tlaBgGNC"> 9 : /* ... */</span></span>
<span id="L198"><span class="lineNum"> 198</span> : /* ... */</span>
<span id="L199"><span class="lineNum"> 199</span> : /* ... */</span>
<span id="L200"><span class="lineNum"> 200</span> : /* ... */</span>
<span id="L201"><span class="lineNum"> 201</span> <span class="tlaGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L202"><span class="lineNum"> 202</span> <span class="tlaGNC"> 1173 : /* (content generated from line coverage data) */</span></span>
<span id="L203"><span class="lineNum"> 203</span> : /* ... */</span>
<span id="L204"><span class="lineNum"> 204</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L205"><span class="lineNum"> 205</span> : /* ... */</span>
<span id="L206"><span class="lineNum"> 206</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L207"><span class="lineNum"> 207</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L208"><span class="lineNum"> 208</span> <span class="tlaGNC"> 9 : /* ... */</span></span>
<span id="L209"><span class="lineNum"> 209</span> : /* ... */</span>
<span id="L210"><span class="lineNum"> 210</span> : /* ... */</span>
<span id="L211"><span class="lineNum"> 211</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L212"><span class="lineNum"> 212</span> : /* ... */</span>
<span id="L213"><span class="lineNum"> 213</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L214"><span class="lineNum"> 214</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L215"><span class="lineNum"> 215</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L216"><span class="lineNum"> 216</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L217"><span class="lineNum"> 217</span> : /* ... */</span>
<span id="L218"><span class="lineNum"> 218</span> <span class="tlaGNC"> 1173 : /* ... */</span></span>
<span id="L219"><span class="lineNum"> 219</span> : /* ... */</span>
<span id="L220"><span class="lineNum"> 220</span> : /* ... */</span>
<span id="L221"><span class="lineNum"> 221</span> <span class="tlaGNC"> 1173 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L222"><span class="lineNum"> 222</span> : /* (content generated from line coverage data) */</span>
<span id="L223"><span class="lineNum"> 223</span> : /* ... */</span>
<span id="L224"><span class="lineNum"> 224</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L225"><span class="lineNum"> 225</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L226"><span class="lineNum"> 226</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L227"><span class="lineNum"> 227</span> : /* ... */</span>
<span id="L228"><span class="lineNum"> 228</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L229"><span class="lineNum"> 229</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L230"><span class="lineNum"> 230</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L231"><span class="lineNum"> 231</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L232"><span class="lineNum"> 232</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L233"><span class="lineNum"> 233</span> : /* ... */</span>
<span id="L234"><span class="lineNum"> 234</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L235"><span class="lineNum"> 235</span> : /* ... */</span>
<span id="L236"><span class="lineNum"> 236</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L237"><span class="lineNum"> 237</span> : /* ... */</span>
<span id="L238"><span class="lineNum"> 238</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L239"><span class="lineNum"> 239</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L240"><span class="lineNum"> 240</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L241"><span class="lineNum"> 241</span> <span class="tlaUNC tlaBgUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L242"><span class="lineNum"> 242</span> : /* (content generated from line coverage data) */</span>
<span id="L243"><span class="lineNum"> 243</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L244"><span class="lineNum"> 244</span> : /* ... */</span>
<span id="L245"><span class="lineNum"> 245</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L246"><span class="lineNum"> 246</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L247"><span class="lineNum"> 247</span> : /* ... */</span>
<span id="L248"><span class="lineNum"> 248</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L249"><span class="lineNum"> 249</span> : /* ... */</span>
<span id="L250"><span class="lineNum"> 250</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L251"><span class="lineNum"> 251</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L252"><span class="lineNum"> 252</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L253"><span class="lineNum"> 253</span> : /* ... */</span>
<span id="L254"><span class="lineNum"> 254</span> : /* ... */</span>
<span id="L255"><span class="lineNum"> 255</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L256"><span class="lineNum"> 256</span> : /* ... */</span>
<span id="L257"><span class="lineNum"> 257</span> : /* ... */</span>
<span id="L258"><span class="lineNum"> 258</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L259"><span class="lineNum"> 259</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L260"><span class="lineNum"> 260</span> : /* ... */</span>
<span id="L261"><span class="lineNum"> 261</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L262"><span class="lineNum"> 262</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L263"><span class="lineNum"> 263</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L264"><span class="lineNum"> 264</span> : /* ... */</span>
<span id="L265"><span class="lineNum"> 265</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L266"><span class="lineNum"> 266</span> : /* ... */</span>
<span id="L267"><span class="lineNum"> 267</span> : /* ... */</span>
<span id="L268"><span class="lineNum"> 268</span> : /* ... */</span>
<span id="L269"><span class="lineNum"> 269</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L270"><span class="lineNum"> 270</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L271"><span class="lineNum"> 271</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L272"><span class="lineNum"> 272</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L273"><span class="lineNum"> 273</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L274"><span class="lineNum"> 274</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L275"><span class="lineNum"> 275</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L276"><span class="lineNum"> 276</span> : /* ... */</span>
<span id="L277"><span class="lineNum"> 277</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L278"><span class="lineNum"> 278</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L279"><span class="lineNum"> 279</span> <span class="tlaGNC"> 24 : /* ... */</span></span>
<span id="L280"><span class="lineNum"> 280</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L281"><span class="lineNum"> 281</span> <span class="tlaGNC"> 72 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L282"><span class="lineNum"> 282</span> <span class="tlaUNC tlaBgUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L283"><span class="lineNum"> 283</span> : /* ... */</span>
<span id="L284"><span class="lineNum"> 284</span> <span class="tlaGNC tlaBgGNC"> 72 : /* ... */</span></span>
<span id="L285"><span class="lineNum"> 285</span> <span class="tlaGNC"> 72 : /* ... */</span></span>
<span id="L286"><span class="lineNum"> 286</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L287"><span class="lineNum"> 287</span> : /* ... */</span>
<span id="L288"><span class="lineNum"> 288</span> <span class="tlaGNC tlaBgGNC"> 72 : /* ... */</span></span>
<span id="L289"><span class="lineNum"> 289</span> : /* ... */</span>
<span id="L290"><span class="lineNum"> 290</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L291"><span class="lineNum"> 291</span> : /* ... */</span>
<span id="L292"><span class="lineNum"> 292</span> : /* ... */</span>
<span id="L293"><span class="lineNum"> 293</span> : /* ... */</span>
<span id="L294"><span class="lineNum"> 294</span> <span class="tlaGNC tlaBgGNC"> 24 : /* ... */</span></span>
<span id="L295"><span class="lineNum"> 295</span> : /* ... */</span>
<span id="L296"><span class="lineNum"> 296</span> : /* ... */</span>
<span id="L297"><span class="lineNum"> 297</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L298"><span class="lineNum"> 298</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L299"><span class="lineNum"> 299</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L300"><span class="lineNum"> 300</span> : /* ... */</span>
<span id="L301"><span class="lineNum"> 301</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L302"><span class="lineNum"> 302</span> <span class="tlaGNC tlaBgGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L303"><span class="lineNum"> 303</span> : /* ... */</span>
<span id="L304"><span class="lineNum"> 304</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L305"><span class="lineNum"> 305</span> : /* ... */</span>
<span id="L306"><span class="lineNum"> 306</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L307"><span class="lineNum"> 307</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L308"><span class="lineNum"> 308</span> : /* ... */</span>
<span id="L309"><span class="lineNum"> 309</span> : /* ... */</span>
<span id="L310"><span class="lineNum"> 310</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L311"><span class="lineNum"> 311</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L312"><span class="lineNum"> 312</span> : /* ... */</span>
<span id="L313"><span class="lineNum"> 313</span> : /* ... */</span>
<span id="L314"><span class="lineNum"> 314</span> : /* ... */</span>
<span id="L315"><span class="lineNum"> 315</span> : /* ... */</span>
<span id="L316"><span class="lineNum"> 316</span> : /* ... */</span>
<span id="L317"><span class="lineNum"> 317</span> : /* ... */</span>
<span id="L318"><span class="lineNum"> 318</span> : /* ... */</span>
<span id="L319"><span class="lineNum"> 319</span> : /* ... */</span>
<span id="L320"><span class="lineNum"> 320</span> : /* ... */</span>
<span id="L321"><span class="lineNum"> 321</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L322"><span class="lineNum"> 322</span> : /* (content generated from line coverage data) */</span>
<span id="L323"><span class="lineNum"> 323</span> : /* ... */</span>
<span id="L324"><span class="lineNum"> 324</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L325"><span class="lineNum"> 325</span> : /* ... */</span>
<span id="L326"><span class="lineNum"> 326</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L327"><span class="lineNum"> 327</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L328"><span class="lineNum"> 328</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L329"><span class="lineNum"> 329</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L330"><span class="lineNum"> 330</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L331"><span class="lineNum"> 331</span> : /* ... */</span>
<span id="L332"><span class="lineNum"> 332</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L333"><span class="lineNum"> 333</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L334"><span class="lineNum"> 334</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L335"><span class="lineNum"> 335</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L336"><span class="lineNum"> 336</span> : /* ... */</span>
<span id="L337"><span class="lineNum"> 337</span> : /* ... */</span>
<span id="L338"><span class="lineNum"> 338</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L339"><span class="lineNum"> 339</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L340"><span class="lineNum"> 340</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L341"><span class="lineNum"> 341</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L342"><span class="lineNum"> 342</span> <span class="tlaGNC"> 3 : /* (content generated from line coverage data) */</span></span>
<span id="L343"><span class="lineNum"> 343</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L344"><span class="lineNum"> 344</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L345"><span class="lineNum"> 345</span> : /* ... */</span>
<span id="L346"><span class="lineNum"> 346</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L347"><span class="lineNum"> 347</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L348"><span class="lineNum"> 348</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L349"><span class="lineNum"> 349</span> : /* ... */</span>
<span id="L350"><span class="lineNum"> 350</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L351"><span class="lineNum"> 351</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L352"><span class="lineNum"> 352</span> : /* ... */</span>
<span id="L353"><span class="lineNum"> 353</span> : /* ... */</span>
<span id="L354"><span class="lineNum"> 354</span> <span class="tlaGNC tlaBgGNC"> 3 : /* ... */</span></span>
<span id="L355"><span class="lineNum"> 355</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L356"><span class="lineNum"> 356</span> : /* ... */</span>
<span id="L357"><span class="lineNum"> 357</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L358"><span class="lineNum"> 358</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L359"><span class="lineNum"> 359</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L360"><span class="lineNum"> 360</span> : /* ... */</span>
<span id="L361"><span class="lineNum"> 361</span> <span class="tlaGNC tlaBgGNC"> 3 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L362"><span class="lineNum"> 362</span> <span class="tlaGNC"> 3 : /* (content generated from line coverage data) */</span></span>
<span id="L363"><span class="lineNum"> 363</span> : /* ... */</span>
<span id="L364"><span class="lineNum"> 364</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L365"><span class="lineNum"> 365</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L366"><span class="lineNum"> 366</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L367"><span class="lineNum"> 367</span> : /* ... */</span>
<span id="L368"><span class="lineNum"> 368</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L369"><span class="lineNum"> 369</span> <span class="tlaGNC"> 6 : /* ... */</span></span>
<span id="L370"><span class="lineNum"> 370</span> <span class="tlaGNC"> 5 : /* ... */</span></span>
<span id="L371"><span class="lineNum"> 371</span> : /* ... */</span>
<span id="L372"><span class="lineNum"> 372</span> : /* ... */</span>
<span id="L373"><span class="lineNum"> 373</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L374"><span class="lineNum"> 374</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L375"><span class="lineNum"> 375</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L376"><span class="lineNum"> 376</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L377"><span class="lineNum"> 377</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L378"><span class="lineNum"> 378</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L379"><span class="lineNum"> 379</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L380"><span class="lineNum"> 380</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L381"><span class="lineNum"> 381</span> : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span>
<span id="L382"><span class="lineNum"> 382</span> : /* (content generated from line coverage data) */</span>
<span id="L383"><span class="lineNum"> 383</span> : /* ... */</span>
<span id="L384"><span class="lineNum"> 384</span> : /* ... */</span>
<span id="L385"><span class="lineNum"> 385</span> <span class="tlaGNC"> 3 : /* ... */</span></span>
<span id="L386"><span class="lineNum"> 386</span> : /* ... */</span>
<span id="L387"><span class="lineNum"> 387</span> : /* ... */</span>
<span id="L388"><span class="lineNum"> 388</span> : /* ... */</span>
<span id="L389"><span class="lineNum"> 389</span> : /* ... */</span>
<span id="L390"><span class="lineNum"> 390</span> : /* ... */</span>
<span id="L391"><span class="lineNum"> 391</span> : /* ... */</span>
<span id="L392"><span class="lineNum"> 392</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L393"><span class="lineNum"> 393</span> : /* ... */</span>
<span id="L394"><span class="lineNum"> 394</span> : /* ... */</span>
<span id="L395"><span class="lineNum"> 395</span> : /* ... */</span>
<span id="L396"><span class="lineNum"> 396</span> : /* ... */</span>
<span id="L397"><span class="lineNum"> 397</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L398"><span class="lineNum"> 398</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L399"><span class="lineNum"> 399</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L400"><span class="lineNum"> 400</span> : /* ... */</span>
<span id="L401"><span class="lineNum"> 401</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L402"><span class="lineNum"> 402</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L403"><span class="lineNum"> 403</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L404"><span class="lineNum"> 404</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L405"><span class="lineNum"> 405</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L406"><span class="lineNum"> 406</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L407"><span class="lineNum"> 407</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L408"><span class="lineNum"> 408</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L409"><span class="lineNum"> 409</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L410"><span class="lineNum"> 410</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L411"><span class="lineNum"> 411</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L412"><span class="lineNum"> 412</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L413"><span class="lineNum"> 413</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L414"><span class="lineNum"> 414</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L415"><span class="lineNum"> 415</span> : /* ... */</span>
<span id="L416"><span class="lineNum"> 416</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L417"><span class="lineNum"> 417</span> : /* ... */</span>
<span id="L418"><span class="lineNum"> 418</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L419"><span class="lineNum"> 419</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L420"><span class="lineNum"> 420</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L421"><span class="lineNum"> 421</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L422"><span class="lineNum"> 422</span> : /* (content generated from line coverage data) */</span>
<span id="L423"><span class="lineNum"> 423</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L424"><span class="lineNum"> 424</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L425"><span class="lineNum"> 425</span> : /* ... */</span>
<span id="L426"><span class="lineNum"> 426</span> : /* ... */</span>
<span id="L427"><span class="lineNum"> 427</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L428"><span class="lineNum"> 428</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L429"><span class="lineNum"> 429</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L430"><span class="lineNum"> 430</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L431"><span class="lineNum"> 431</span> : /* ... */</span>
<span id="L432"><span class="lineNum"> 432</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L433"><span class="lineNum"> 433</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L434"><span class="lineNum"> 434</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L435"><span class="lineNum"> 435</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L436"><span class="lineNum"> 436</span> : /* ... */</span>
<span id="L437"><span class="lineNum"> 437</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L438"><span class="lineNum"> 438</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L439"><span class="lineNum"> 439</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L440"><span class="lineNum"> 440</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L441"><span class="lineNum"> 441</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L442"><span class="lineNum"> 442</span> : /* (content generated from line coverage data) */</span>
<span id="L443"><span class="lineNum"> 443</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L444"><span class="lineNum"> 444</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L445"><span class="lineNum"> 445</span> : /* ... */</span>
<span id="L446"><span class="lineNum"> 446</span> : /* ... */</span>
<span id="L447"><span class="lineNum"> 447</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L448"><span class="lineNum"> 448</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L449"><span class="lineNum"> 449</span> : /* ... */</span>
<span id="L450"><span class="lineNum"> 450</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L451"><span class="lineNum"> 451</span> : /* ... */</span>
<span id="L452"><span class="lineNum"> 452</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L453"><span class="lineNum"> 453</span> : /* ... */</span>
<span id="L454"><span class="lineNum"> 454</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L455"><span class="lineNum"> 455</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L456"><span class="lineNum"> 456</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L457"><span class="lineNum"> 457</span> : /* ... */</span>
<span id="L458"><span class="lineNum"> 458</span> : /* ... */</span>
<span id="L459"><span class="lineNum"> 459</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L460"><span class="lineNum"> 460</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L461"><span class="lineNum"> 461</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L462"><span class="lineNum"> 462</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L463"><span class="lineNum"> 463</span> : /* ... */</span>
<span id="L464"><span class="lineNum"> 464</span> : /* ... */</span>
<span id="L465"><span class="lineNum"> 465</span> : /* ... */</span>
<span id="L466"><span class="lineNum"> 466</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L467"><span class="lineNum"> 467</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L468"><span class="lineNum"> 468</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L469"><span class="lineNum"> 469</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L470"><span class="lineNum"> 470</span> : /* ... */</span>
<span id="L471"><span class="lineNum"> 471</span> : /* ... */</span>
<span id="L472"><span class="lineNum"> 472</span> : /* ... */</span>
<span id="L473"><span class="lineNum"> 473</span> : /* ... */</span>
<span id="L474"><span class="lineNum"> 474</span> : /* ... */</span>
<span id="L475"><span class="lineNum"> 475</span> : /* ... */</span>
<span id="L476"><span class="lineNum"> 476</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L477"><span class="lineNum"> 477</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L478"><span class="lineNum"> 478</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L479"><span class="lineNum"> 479</span> : /* ... */</span>
<span id="L480"><span class="lineNum"> 480</span> : /* ... */</span>
<span id="L481"><span class="lineNum"> 481</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L482"><span class="lineNum"> 482</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L483"><span class="lineNum"> 483</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L484"><span class="lineNum"> 484</span> : /* ... */</span>
<span id="L485"><span class="lineNum"> 485</span> : /* ... */</span>
<span id="L486"><span class="lineNum"> 486</span> : /* ... */</span>
<span id="L487"><span class="lineNum"> 487</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L488"><span class="lineNum"> 488</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L489"><span class="lineNum"> 489</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L490"><span class="lineNum"> 490</span> : /* ... */</span>
<span id="L491"><span class="lineNum"> 491</span> : /* ... */</span>
<span id="L492"><span class="lineNum"> 492</span> : /* ... */</span>
<span id="L493"><span class="lineNum"> 493</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L494"><span class="lineNum"> 494</span> : /* ... */</span>
<span id="L495"><span class="lineNum"> 495</span> : /* ... */</span>
<span id="L496"><span class="lineNum"> 496</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L497"><span class="lineNum"> 497</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L498"><span class="lineNum"> 498</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L499"><span class="lineNum"> 499</span> : /* ... */</span>
<span id="L500"><span class="lineNum"> 500</span> : /* ... */</span>
<span id="L501"><span class="lineNum"> 501</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L502"><span class="lineNum"> 502</span> <span class="tlaUNC"> 0 : /* (content generated from line coverage data) */</span></span>
<span id="L503"><span class="lineNum"> 503</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L504"><span class="lineNum"> 504</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L505"><span class="lineNum"> 505</span> : /* ... */</span>
<span id="L506"><span class="lineNum"> 506</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L507"><span class="lineNum"> 507</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L508"><span class="lineNum"> 508</span> : /* ... */</span>
<span id="L509"><span class="lineNum"> 509</span> : /* ... */</span>
<span id="L510"><span class="lineNum"> 510</span> : /* ... */</span>
<span id="L511"><span class="lineNum"> 511</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L512"><span class="lineNum"> 512</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L513"><span class="lineNum"> 513</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L514"><span class="lineNum"> 514</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L515"><span class="lineNum"> 515</span> : /* ... */</span>
<span id="L516"><span class="lineNum"> 516</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L517"><span class="lineNum"> 517</span> <span class="tlaUNC"> 0 : /* ... */</span></span>
<span id="L518"><span class="lineNum"> 518</span> : /* ... */</span>
<span id="L519"><span class="lineNum"> 519</span> : /* ... */</span>
<span id="L520"><span class="lineNum"> 520</span> : /* ... */</span>
<span id="L521"><span class="lineNum"> 521</span> <span class="tlaUNC"> 0 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L522"><span class="lineNum"> 522</span> : /* (content generated from line coverage data) */</span>
<span id="L523"><span class="lineNum"> 523</span> : /* ... */</span>
<span id="L524"><span class="lineNum"> 524</span> : /* ... */</span>
<span id="L525"><span class="lineNum"> 525</span> : /* ... */</span>
<span id="L526"><span class="lineNum"> 526</span> : /* ... */</span>
<span id="L527"><span class="lineNum"> 527</span> : /* ... */</span>
<span id="L528"><span class="lineNum"> 528</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L529"><span class="lineNum"> 529</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L530"><span class="lineNum"> 530</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L531"><span class="lineNum"> 531</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L532"><span class="lineNum"> 532</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L533"><span class="lineNum"> 533</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L534"><span class="lineNum"> 534</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L535"><span class="lineNum"> 535</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L536"><span class="lineNum"> 536</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L537"><span class="lineNum"> 537</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L538"><span class="lineNum"> 538</span> : /* ... */</span>
<span id="L539"><span class="lineNum"> 539</span> : /* ... */</span>
<span id="L540"><span class="lineNum"> 540</span> : /* ... */</span>
<span id="L541"><span class="lineNum"> 541</span> <span class="tlaGNC"> 1 : /* /mnt/c/Users/Marcus/Documents/packages/jecs/tools/testkit.luau not found */</span></span>
<span id="L542"><span class="lineNum"> 542</span> <span class="tlaGNC"> 1 : /* (content generated from line coverage data) */</span></span>
<span id="L543"><span class="lineNum"> 543</span> : /* ... */</span>
<span id="L544"><span class="lineNum"> 544</span> : /* ... */</span>
<span id="L545"><span class="lineNum"> 545</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L546"><span class="lineNum"> 546</span> <span class="tlaUNC tlaBgUNC"> 0 : /* ... */</span></span>
<span id="L547"><span class="lineNum"> 547</span> : /* ... */</span>
<span id="L548"><span class="lineNum"> 548</span> : /* ... */</span>
<span id="L549"><span class="lineNum"> 549</span> <span class="tlaGNC tlaBgGNC"> 1 : /* ... */</span></span>
<span id="L550"><span class="lineNum"> 550</span> : /* ... */</span>
<span id="L551"><span class="lineNum"> 551</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L552"><span class="lineNum"> 552</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
<span id="L553"><span class="lineNum"> 553</span> : /* ... */</span>
<span id="L554"><span class="lineNum"> 554</span> <span class="tlaGNC"> 1 : /* ... */</span></span>
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="https://github.com//linux-test-project/lcov" target="_parent">LCOV version 2.0-1</a></td></tr>
</table>
<br>
</body>
</html>

250
coverage/lifetime_tracker.luau.html vendored Normal file
View file

@ -0,0 +1,250 @@
<html><head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<style>
body { font-family: monospace; font-size: 16px; }
.zero-hits { background-color: #fcc; font-weight: bold; color: red; }
.nonzero-hits { color: green; font-weight: bold; }
.low-hits { background-color: #ffe6b3; }
.high-hits { background-color: #cfc; }
th, td { padding: 0px; font-size: 12px; }
table.table { font-size: 14px; border-collapse: collapse; }
table.table th, table.table td { padding: 1px; font-size: 12px; line-height: 1.2; }
table.table tr { height: auto; }
</style></head><body>
<h1 class="text-center">lifetime_tracker.luau Coverage</h1>
<h2>Total Execution Hits: 1</h2>
<h2>Function Coverage Overview: 9.09%</h2>
<button class="btn btn-primary mb-2" type="button" data-bs-toggle="collapse" data-bs-target="#funcTable">Toggle Function Coverage</button>
<div class="collapse show" id="funcTable">
<h2>Function Coverage:</h2><table class="table table-bordered"><thead><tr><th>Function</th><th>Hits</th></tr></thead><tbody>
<tr><td style="padding: 1px; min-width: 24ch;"><main></td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;">print_centered_entity:12</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;">name:26</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;">pad:30</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;">lifetime_tracker_add:36</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:48</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:62</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:89</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:135</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:164</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 24ch;"><anonymous>:175</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
</tbody></table></div>
<h2>Source Code:</h2><table class="table table-bordered"><thead><tr><th>Line</th><th>Hits</th><th>Code</th></tr></thead><tbody>
<tr><td>1</td><td>1</td><td><span class=high-hits>local jecs = require("@jecs")</span></td></tr>
<tr><td>2</td><td>1</td><td><span class=high-hits>local ECS_GENERATION = jecs.ECS_GENERATION</span></td></tr>
<tr><td>3</td><td>1</td><td><span class=high-hits>local ECS_ID = jecs.ECS_ID</span></td></tr>
<tr><td>4</td><td>1</td><td><span class=high-hits>local __ = jecs.Wildcard</span></td></tr>
<tr><td>5</td><td>1</td><td><span class=high-hits>local pair = jecs.pair</span></td></tr>
<tr><td>6</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>7</td><td>1</td><td><span class=high-hits>local prettify = require("@tools/entity_visualiser").prettify</span></td></tr>
<tr><td>8</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>9</td><td>1</td><td><span class=high-hits>local pe = prettify</span></td></tr>
<tr><td>10</td><td>1</td><td><span class=high-hits>local ansi = require("@tools/ansi")</span></td></tr>
<tr><td>11</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>12</td><td>1</td><td><span class=high-hits>function print_centered_entity(entity, width: number)</span></td></tr>
<tr><td>13</td><td>0</td><td><span class=zero-hits>local entity_str = tostring(entity)</span></td></tr>
<tr><td>14</td><td>0</td><td><span class=zero-hits>local entity_length = #entity_str</span></td></tr>
<tr><td>15</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>16</td><td>0</td><td><span class=zero-hits>local padding_total = width - 2 - entity_length</span></td></tr>
<tr><td>17</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>18</td><td>0</td><td><span class=zero-hits>local padding_left = math.floor(padding_total / 2)</span></td></tr>
<tr><td>19</td><td>0</td><td><span class=zero-hits>local padding_right = padding_total - padding_left</span></td></tr>
<tr><td>20</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>21</td><td>0</td><td><span class=zero-hits>local centered_str = string.rep(" ", padding_left) .. entity_str .. string.rep(" ", padding_right)</span></td></tr>
<tr><td>22</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>23</td><td>0</td><td><span class=zero-hits>print("|" .. centered_str .. "|")</span></td></tr>
<tr><td>24</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>25</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>26</td><td>1</td><td><span class=high-hits>local function name(world, e)</span></td></tr>
<tr><td>27</td><td>0</td><td><span class=zero-hits>return world:get(world, e, jecs.Name) or pe(e)</span></td></tr>
<tr><td>28</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>29</td><td>1</td><td><span class=high-hits>local padding_enabled = false</span></td></tr>
<tr><td>30</td><td>1</td><td><span class=high-hits>local function pad()</span></td></tr>
<tr><td>31</td><td>0</td><td><span class=zero-hits>if padding_enabled then</span></td></tr>
<tr><td>32</td><td>0</td><td><span class=zero-hits>print("")</span></td></tr>
<tr><td>33</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>34</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>35</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>36</td><td>1</td><td><span class=high-hits>local function lifetime_tracker_add(world: jecs.World, opt)</span></td></tr>
<tr><td>37</td><td>0</td><td><span class=zero-hits>local entity_index = world.entity_index</span></td></tr>
<tr><td>38</td><td>0</td><td><span class=zero-hits>local dense_array = entity_index.dense_array</span></td></tr>
<tr><td>39</td><td>0</td><td><span class=zero-hits>local component_index = world.component_index</span></td></tr>
<tr><td>40</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>41</td><td>0</td><td><span class=zero-hits>local ENTITY_RANGE = (jecs.Rest :: any) + 1</span></td></tr>
<tr><td>42</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>43</td><td>0</td><td><span class=zero-hits>local w = setmetatable({}, { __index = world })</span></td></tr>
<tr><td>44</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>45</td><td>0</td><td><span class=zero-hits>padding_enabled = opt.padding_enabled</span></td></tr>
<tr><td>46</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>47</td><td>0</td><td><span class=zero-hits>local world_entity = world.entity</span></td></tr>
<tr><td>48</td><td>0</td><td><span class=zero-hits>w.entity = function(self, entity)</span></td></tr>
<tr><td>49</td><td>0</td><td><span class=zero-hits>if entity then</span></td></tr>
<tr><td>50</td><td>0</td><td><span class=zero-hits>return world_entity(world, entity)</span></td></tr>
<tr><td>51</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>52</td><td>0</td><td><span class=zero-hits>local will_recycle = entity_index.max_id ~= entity_index.alive_count</span></td></tr>
<tr><td>53</td><td>0</td><td><span class=zero-hits>local e = world_entity(world)</span></td></tr>
<tr><td>54</td><td>0</td><td><span class=zero-hits>if will_recycle then</span></td></tr>
<tr><td>55</td><td>0</td><td><span class=zero-hits>print(`*recycled {pe(e)}`)</span></td></tr>
<tr><td>56</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>57</td><td>0</td><td><span class=zero-hits>print(`*created {pe(e)}`)</span></td></tr>
<tr><td>58</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>59</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>60</td><td>0</td><td><span class=zero-hits>return e</span></td></tr>
<tr><td>61</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>62</td><td>0</td><td><span class=zero-hits>w.print_entity_index = function(self)</span></td></tr>
<tr><td>63</td><td>0</td><td><span class=zero-hits>local max_id = entity_index.max_id</span></td></tr>
<tr><td>64</td><td>0</td><td><span class=zero-hits>local alive_count = entity_index.alive_count</span></td></tr>
<tr><td>65</td><td>0</td><td><span class=zero-hits>local alive = table.move(dense_array, 1 + jecs.Rest :: any, alive_count, 1, {})</span></td></tr>
<tr><td>66</td><td>0</td><td><span class=zero-hits>local dead = table.move(dense_array, alive_count + 1, max_id, 1, {})</span></td></tr>
<tr><td>67</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>68</td><td>0</td><td><span class=zero-hits>local sep = "|--------|"</span></td></tr>
<tr><td>69</td><td>0</td><td><span class=zero-hits>if #alive > 0 then</span></td></tr>
<tr><td>70</td><td>0</td><td><span class=zero-hits>print("|-alive--|")</span></td></tr>
<tr><td>71</td><td>0</td><td><span class=zero-hits>for i = 1, #alive do</span></td></tr>
<tr><td>72</td><td>0</td><td><span class=zero-hits>local e = pe(alive[i])</span></td></tr>
<tr><td>73</td><td>0</td><td><span class=zero-hits>print_centered_entity(e, 32)</span></td></tr>
<tr><td>74</td><td>0</td><td><span class=zero-hits>print(sep)</span></td></tr>
<tr><td>75</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>76</td><td>0</td><td><span class=zero-hits>print("\n")</span></td></tr>
<tr><td>77</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>78</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>79</td><td>0</td><td><span class=zero-hits>if #dead > 0 then</span></td></tr>
<tr><td>80</td><td>0</td><td><span class=zero-hits>print("|--dead--|")</span></td></tr>
<tr><td>81</td><td>0</td><td><span class=zero-hits>for i = 1, #dead do</span></td></tr>
<tr><td>82</td><td>0</td><td><span class=zero-hits>print_centered_entity(pe(dead[i]), 32)</span></td></tr>
<tr><td>83</td><td>0</td><td><span class=zero-hits>print(sep)</span></td></tr>
<tr><td>84</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>85</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>86</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>87</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>88</td><td>0</td><td><span class=zero-hits>local timelines = {}</span></td></tr>
<tr><td>89</td><td>0</td><td><span class=zero-hits>w.print_snapshot = function(self)</span></td></tr>
<tr><td>90</td><td>0</td><td><span class=zero-hits>local timeline = #timelines + 1</span></td></tr>
<tr><td>91</td><td>0</td><td><span class=zero-hits>local entity_column_width = 10</span></td></tr>
<tr><td>92</td><td>0</td><td><span class=zero-hits>local status_column_width = 8</span></td></tr>
<tr><td>93</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>94</td><td>0</td><td><span class=zero-hits>local header = string.format("| %-" .. entity_column_width .. "s |", "Entity")</span></td></tr>
<tr><td>95</td><td>0</td><td><span class=zero-hits>for i = 1, timeline do</span></td></tr>
<tr><td>96</td><td>0</td><td><span class=zero-hits>header = header .. string.format(" %-" .. status_column_width .. "s |", string.format("T%d", i))</span></td></tr>
<tr><td>97</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>98</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>99</td><td>0</td><td><span class=zero-hits>local max_id = entity_index.max_id</span></td></tr>
<tr><td>100</td><td>0</td><td><span class=zero-hits>local alive_count = entity_index.alive_count</span></td></tr>
<tr><td>101</td><td>0</td><td><span class=zero-hits>local alive = table.move(dense_array, 1 + jecs.Rest :: any, alive_count, 1, {})</span></td></tr>
<tr><td>102</td><td>0</td><td><span class=zero-hits>local dead = table.move(dense_array, alive_count + 1, max_id, 1, {})</span></td></tr>
<tr><td>103</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>104</td><td>0</td><td><span class=zero-hits>local data = {}</span></td></tr>
<tr><td>105</td><td>0</td><td><span class=zero-hits>print("-------------------------------------------------------------------")</span></td></tr>
<tr><td>106</td><td>0</td><td><span class=zero-hits>print(header)</span></td></tr>
<tr><td>107</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>108</td><td><span class='text-muted'>N/A</span></td><td>-- Store the snapshot data for this timeline</td>></tr>
<tr><td>109</td><td>0</td><td><span class=zero-hits>for i = ENTITY_RANGE, max_id do</span></td></tr>
<tr><td>110</td><td>0</td><td><span class=zero-hits>if dense_array[i] then</span></td></tr>
<tr><td>111</td><td>0</td><td><span class=zero-hits>local entity = dense_array[i]</span></td></tr>
<tr><td>112</td><td>0</td><td><span class=zero-hits>local id = ECS_ID(entity)</span></td></tr>
<tr><td>113</td><td>0</td><td><span class=zero-hits>local status = "alive"</span></td></tr>
<tr><td>114</td><td>0</td><td><span class=zero-hits>if not world:contains(entity) then</span></td></tr>
<tr><td>115</td><td>0</td><td><span class=zero-hits>status = "dead"</span></td></tr>
<tr><td>116</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>117</td><td>0</td><td><span class=zero-hits>data[id] = status</span></td></tr>
<tr><td>118</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>119</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>120</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>121</td><td>0</td><td><span class=zero-hits>table.insert(timelines, data)</span></td></tr>
<tr><td>122</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>123</td><td><span class='text-muted'>N/A</span></td><td>-- Create a table to hold entity data for sorting</td>></tr>
<tr><td>124</td><td>0</td><td><span class=zero-hits>local entities = {}</span></td></tr>
<tr><td>125</td><td>0</td><td><span class=zero-hits>for i = ENTITY_RANGE, max_id do</span></td></tr>
<tr><td>126</td><td>0</td><td><span class=zero-hits>if dense_array[i] then</span></td></tr>
<tr><td>127</td><td>0</td><td><span class=zero-hits>local entity = dense_array[i]</span></td></tr>
<tr><td>128</td><td>0</td><td><span class=zero-hits>local id = ECS_ID(entity)</span></td></tr>
<tr><td>129</td><td><span class='text-muted'>N/A</span></td><td>-- Push entity and id into the new `entities` table</td>></tr>
<tr><td>130</td><td>0</td><td><span class=zero-hits>table.insert(entities, { entity = entity, id = id })</span></td></tr>
<tr><td>131</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>132</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>133</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>134</td><td><span class='text-muted'>N/A</span></td><td>-- Sort the entities by ECS_ID</td>></tr>
<tr><td>135</td><td>0</td><td><span class=zero-hits>table.sort(entities, function(a, b)</span></td></tr>
<tr><td>136</td><td>0</td><td><span class=zero-hits>return a.id < b.id</span></td></tr>
<tr><td>137</td><td><span class='text-muted'>N/A</span></td><td>end)</td>></tr>
<tr><td>138</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>139</td><td><span class='text-muted'>N/A</span></td><td>-- Print the sorted rows</td>></tr>
<tr><td>140</td><td>0</td><td><span class=zero-hits>for _, entity_data in ipairs(entities) do</span></td></tr>
<tr><td>141</td><td>0</td><td><span class=zero-hits>local entity = entity_data.entity</span></td></tr>
<tr><td>142</td><td>0</td><td><span class=zero-hits>local id = entity_data.id</span></td></tr>
<tr><td>143</td><td>0</td><td><span class=zero-hits>local status = "alive"</span></td></tr>
<tr><td>144</td><td>0</td><td><span class=zero-hits>if id > alive_count then</span></td></tr>
<tr><td>145</td><td>0</td><td><span class=zero-hits>status = "dead"</span></td></tr>
<tr><td>146</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>147</td><td>0</td><td><span class=zero-hits>local row = string.format("| %-" .. entity_column_width .. "s |", pe(entity))</span></td></tr>
<tr><td>148</td><td>0</td><td><span class=zero-hits>for j = 1, timeline do</span></td></tr>
<tr><td>149</td><td>0</td><td><span class=zero-hits>local timeline_data = timelines[j]</span></td></tr>
<tr><td>150</td><td>0</td><td><span class=zero-hits>local entity_data = timeline_data[id]</span></td></tr>
<tr><td>151</td><td>0</td><td><span class=zero-hits>if entity_data then</span></td></tr>
<tr><td>152</td><td>0</td><td><span class=zero-hits>row = row .. string.format(" %-" .. status_column_width .. "s |", entity_data)</span></td></tr>
<tr><td>153</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>154</td><td>0</td><td><span class=zero-hits>row = row .. string.format(" %-" .. status_column_width .. "s |", "-")</span></td></tr>
<tr><td>155</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>156</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>157</td><td>0</td><td><span class=zero-hits>print(row)</span></td></tr>
<tr><td>158</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>159</td><td>0</td><td><span class=zero-hits>print("-------------------------------------------------------------------")</span></td></tr>
<tr><td>160</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>161</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>162</td><td>0</td><td><span class=zero-hits>local world_add = world.add</span></td></tr>
<tr><td>163</td><td>0</td><td><span class=zero-hits>local relations = {}</span></td></tr>
<tr><td>164</td><td>0</td><td><span class=zero-hits>w.add = function(self, entity: any, component: any)</span></td></tr>
<tr><td>165</td><td>0</td><td><span class=zero-hits>world_add(world, entity, component)</span></td></tr>
<tr><td>166</td><td>0</td><td><span class=zero-hits>if jecs.IS_PAIR(component) then</span></td></tr>
<tr><td>167</td><td>0</td><td><span class=zero-hits>local relation = jecs.pair_first(world, component)</span></td></tr>
<tr><td>168</td><td>0</td><td><span class=zero-hits>local target = jecs.pair_second(world, component)</span></td></tr>
<tr><td>169</td><td>0</td><td><span class=zero-hits>print(`*added ({pe(relation)}, {pe(target)}) to {pe(entity)}`)</span></td></tr>
<tr><td>170</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>171</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>172</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>173</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>174</td><td>0</td><td><span class=zero-hits>local world_delete = world.delete</span></td></tr>
<tr><td>175</td><td>0</td><td><span class=zero-hits>w.delete = function(self, e)</span></td></tr>
<tr><td>176</td><td>0</td><td><span class=zero-hits>world_delete(world, e)</span></td></tr>
<tr><td>177</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>178</td><td>0</td><td><span class=zero-hits>local idr_t = component_index[pair(__, e)]</span></td></tr>
<tr><td>179</td><td>0</td><td><span class=zero-hits>if idr_t then</span></td></tr>
<tr><td>180</td><td>0</td><td><span class=zero-hits>for archetype_id in idr_t.cache do</span></td></tr>
<tr><td>181</td><td>0</td><td><span class=zero-hits>local archetype = world.archetypes[archetype_id]</span></td></tr>
<tr><td>182</td><td>0</td><td><span class=zero-hits>for _, id in archetype.types do</span></td></tr>
<tr><td>183</td><td>0</td><td><span class=zero-hits>if not jecs.IS_PAIR(id) then</span></td></tr>
<tr><td>184</td><td>0</td><td><span class=zero-hits>continue</span></td></tr>
<tr><td>185</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>186</td><td>0</td><td><span class=zero-hits>local object = jecs.pair_second(world, id)</span></td></tr>
<tr><td>187</td><td>0</td><td><span class=zero-hits>if object ~= e then</span></td></tr>
<tr><td>188</td><td>0</td><td><span class=zero-hits>continue</span></td></tr>
<tr><td>189</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>190</td><td>0</td><td><span class=zero-hits>local id_record = component_index[id]</span></td></tr>
<tr><td>191</td><td>0</td><td><span class=zero-hits>local flags = id_record.flags</span></td></tr>
<tr><td>192</td><td>0</td><td><span class=zero-hits>local flags_delete_mask: number = bit32.band(flags, jecs.ECS_ID_DELETE)</span></td></tr>
<tr><td>193</td><td>0</td><td><span class=zero-hits>if flags_delete_mask ~= 0 then</span></td></tr>
<tr><td>194</td><td>0</td><td><span class=zero-hits>for _, entity in archetype.entities do</span></td></tr>
<tr><td>195</td><td>0</td><td><span class=zero-hits>print(`*deleted dependant {pe(entity)} of {pe(e)}`)</span></td></tr>
<tr><td>196</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>197</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>198</td><td>0</td><td><span class=zero-hits>break</span></td></tr>
<tr><td>199</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>200</td><td>0</td><td><span class=zero-hits>for _, entity in archetype.entities do</span></td></tr>
<tr><td>201</td><td>0</td><td><span class=zero-hits>print(</span></td></tr>
<tr><td>202</td><td>0</td><td><span class=zero-hits>`*removed dependency ({pe(jecs.pair_first(world, id))}, {pe(object)}) from {pe(entity)}`</span></td></tr>
<tr><td>203</td><td>0</td><td><span class=zero-hits>)</span></td></tr>
<tr><td>204</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>205</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>206</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>207</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>208</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>209</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>210</td><td>0</td><td><span class=zero-hits>print(`*deleted {pe(e)}`)</span></td></tr>
<tr><td>211</td><td>0</td><td><span class=zero-hits>pad()</span></td></tr>
<tr><td>212</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>213</td><td>0</td><td><span class=zero-hits>return w</span></td></tr>
<tr><td>214</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>215</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>216</td><td>1</td><td><span class=high-hits>return lifetime_tracker_add</span></td></tr>
</tbody></table></body></html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 B

613
coverage/testkit.luau.html vendored Normal file
View file

@ -0,0 +1,613 @@
<html><head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>
<style>
body { font-family: monospace; font-size: 16px; }
.zero-hits { background-color: #fcc; font-weight: bold; color: red; }
.nonzero-hits { color: green; font-weight: bold; }
.low-hits { background-color: #ffe6b3; }
.high-hits { background-color: #cfc; }
th, td { padding: 0px; font-size: 12px; }
table.table { font-size: 14px; border-collapse: collapse; }
table.table th, table.table td { padding: 1px; font-size: 12px; line-height: 1.2; }
table.table tr { height: auto; }
</style></head><body>
<h1 class="text-center">testkit.luau Coverage</h1>
<h2>Total Execution Hits: 615</h2>
<h2>Function Coverage Overview: 54.84%</h2>
<button class="btn btn-primary mb-2" type="button" data-bs-toggle="collapse" data-bs-target="#funcTable">Toggle Function Coverage</button>
<div class="collapse show" id="funcTable">
<h2>Function Coverage:</h2><table class="table table-bordered"><thead><tr><th>Function</th><th>Hits</th></tr></thead><tbody>
<tr><td style="padding: 1px; min-width: 22ch;"><main></td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">white_underline:11</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">white:15</td><td style="padding: 1px; color: green; font-weight: bold;">24</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">green:19</td><td style="padding: 1px; color: green; font-weight: bold;">77</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">red:23</td><td style="padding: 1px; color: green; font-weight: bold;">146</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">yellow:27</td><td style="padding: 1px; color: green; font-weight: bold;">76</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">red_highlight:31</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">green_highlight:35</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">gray:39</td><td style="padding: 1px; color: green; font-weight: bold;">84</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">orange:43</td><td style="padding: 1px; color: green; font-weight: bold;">73</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">convert_units:48</td><td style="padding: 1px; color: green; font-weight: bold;">6</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">output_test_result:131</td><td style="padding: 1px; color: green; font-weight: bold;">24</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">CASE:169</td><td style="padding: 1px; color: green; font-weight: bold;">64</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">CHECK_EXPECT_ERR:183</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">CHECK:201</td><td style="padding: 1px; color: green; font-weight: bold;">9</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">TEST:224</td><td style="padding: 1px; color: green; font-weight: bold;">24</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">FOCUS:237</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">FINISH:248</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;"><anonymous>:264</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">SKIP:314</td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">START:330</td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">BENCH:342</td><td style="padding: 1px; color: green; font-weight: bold;">3</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;"><anonymous>:354</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">round:372</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">print2:396</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">tos:401</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">shallow_eq:480</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">deep_eq:500</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">test:533</td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">benchmark:545</td><td style="padding: 1px; color: green; font-weight: bold;">1</td></tr>
<tr><td style="padding: 1px; min-width: 22ch;">disable_formatting:549</td><td style="padding: 1px; color: red; font-weight: bold;">0</td></tr>
</tbody></table></div>
<h2>Source Code:</h2><table class="table table-bordered"><thead><tr><th>Line</th><th>Hits</th><th>Code</th></tr></thead><tbody>
<tr><td>1</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>2</td><td><span class='text-muted'>N/A</span></td><td>-- testkit.luau</td>></tr>
<tr><td>3</td><td><span class='text-muted'>N/A</span></td><td>-- v0.7.3</td>></tr>
<tr><td>4</td><td><span class='text-muted'>N/A</span></td><td>-- MIT License</td>></tr>
<tr><td>5</td><td><span class='text-muted'>N/A</span></td><td>-- Copyright (c) 2022 centau</td>></tr>
<tr><td>6</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>7</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>8</td><td>1</td><td><span class=low-hits>local disable_ansi = false</span></td></tr>
<tr><td>9</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>10</td><td>1</td><td><span class=low-hits>local color = {</span></td></tr>
<tr><td>11</td><td>1</td><td><span class=low-hits>white_underline = function(s: string): string</span></td></tr>
<tr><td>12</td><td>0</td><td><span class=zero-hits>return if disable_ansi then s else `\27[1;4m{s}\27[0m`</span></td></tr>
<tr><td>13</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>14</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>15</td><td>1</td><td><span class=low-hits>white = function(s: string): string</span></td></tr>
<tr><td>16</td><td>24</td><td><span class=low-hits>return if disable_ansi then s else `\27[37;1m{s}\27[0m`</span></td></tr>
<tr><td>17</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>18</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>19</td><td>1</td><td><span class=low-hits>green = function(s: string): string</span></td></tr>
<tr><td>20</td><td>77</td><td><span class=high-hits>return if disable_ansi then s else `\27[32;1m{s}\27[0m`</span></td></tr>
<tr><td>21</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>22</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>23</td><td>1</td><td><span class=low-hits>red = function(s: string): string</span></td></tr>
<tr><td>24</td><td>146</td><td><span class=high-hits>return if disable_ansi then s else `\27[31;1m{s}\27[0m`</span></td></tr>
<tr><td>25</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>26</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>27</td><td>1</td><td><span class=low-hits>yellow = function(s: string): string</span></td></tr>
<tr><td>28</td><td>76</td><td><span class=high-hits>return if disable_ansi then s else `\27[33;1m{s}\27[0m`</span></td></tr>
<tr><td>29</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>30</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>31</td><td>1</td><td><span class=low-hits>red_highlight = function(s: string): string</span></td></tr>
<tr><td>32</td><td>0</td><td><span class=zero-hits>return if disable_ansi then s else `\27[41;1;30m{s}\27[0m`</span></td></tr>
<tr><td>33</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>34</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>35</td><td>1</td><td><span class=low-hits>green_highlight = function(s: string): string</span></td></tr>
<tr><td>36</td><td>0</td><td><span class=zero-hits>return if disable_ansi then s else `\27[42;1;30m{s}\27[0m`</span></td></tr>
<tr><td>37</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>38</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>39</td><td>1</td><td><span class=low-hits>gray = function(s: string): string</span></td></tr>
<tr><td>40</td><td>84</td><td><span class=high-hits>return if disable_ansi then s else `\27[38;1m{s}\27[0m`</span></td></tr>
<tr><td>41</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>42</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>43</td><td>1</td><td><span class=low-hits>orange = function(s: string): string</span></td></tr>
<tr><td>44</td><td>73</td><td><span class=high-hits>return if disable_ansi then s else `\27[38;5;208m{s}\27[0m`</span></td></tr>
<tr><td>45</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>46</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>47</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>48</td><td>1</td><td><span class=low-hits>local function convert_units(unit: string, value: number): (number, string)</span></td></tr>
<tr><td>49</td><td>6</td><td><span class=low-hits>local sign = math.sign(value)</span></td></tr>
<tr><td>50</td><td>6</td><td><span class=low-hits>value = math.abs(value)</span></td></tr>
<tr><td>51</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>52</td><td>6</td><td><span class=low-hits>local prefix_colors = {</span></td></tr>
<tr><td>53</td><td>6</td><td><span class=low-hits>[4] = color.red,</span></td></tr>
<tr><td>54</td><td>6</td><td><span class=low-hits>[3] = color.red,</span></td></tr>
<tr><td>55</td><td>6</td><td><span class=low-hits>[2] = color.yellow,</span></td></tr>
<tr><td>56</td><td>6</td><td><span class=low-hits>[1] = color.yellow,</span></td></tr>
<tr><td>57</td><td>6</td><td><span class=low-hits>[0] = color.green,</span></td></tr>
<tr><td>58</td><td>6</td><td><span class=low-hits>[-1] = color.red,</span></td></tr>
<tr><td>59</td><td>6</td><td><span class=low-hits>[-2] = color.yellow,</span></td></tr>
<tr><td>60</td><td>6</td><td><span class=low-hits>[-3] = color.green,</span></td></tr>
<tr><td>61</td><td>6</td><td><span class=low-hits>[-4] = color.red,</span></td></tr>
<tr><td>62</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>63</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>64</td><td>6</td><td><span class=low-hits>local prefixes = {</span></td></tr>
<tr><td>65</td><td>6</td><td><span class=low-hits>[4] = "T",</span></td></tr>
<tr><td>66</td><td>6</td><td><span class=low-hits>[3] = "G",</span></td></tr>
<tr><td>67</td><td>6</td><td><span class=low-hits>[2] = "M",</span></td></tr>
<tr><td>68</td><td>6</td><td><span class=low-hits>[1] = "k",</span></td></tr>
<tr><td>69</td><td>6</td><td><span class=low-hits>[0] = " ",</span></td></tr>
<tr><td>70</td><td>6</td><td><span class=low-hits>[-1] = "m",</span></td></tr>
<tr><td>71</td><td>6</td><td><span class=low-hits>[-2] = "u",</span></td></tr>
<tr><td>72</td><td>6</td><td><span class=low-hits>[-3] = "n",</span></td></tr>
<tr><td>73</td><td>6</td><td><span class=low-hits>[-4] = "p",</span></td></tr>
<tr><td>74</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>75</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>76</td><td>6</td><td><span class=low-hits>local order = 0</span></td></tr>
<tr><td>77</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>78</td><td>7</td><td><span class=low-hits>while value >= 1000 do</span></td></tr>
<tr><td>79</td><td>1</td><td><span class=low-hits>order += 1</span></td></tr>
<tr><td>80</td><td>1</td><td><span class=low-hits>value /= 1000</span></td></tr>
<tr><td>81</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>82</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>83</td><td>11</td><td><span class=low-hits>while value ~= 0 and value < 1 do</span></td></tr>
<tr><td>84</td><td>7</td><td><span class=low-hits>order -= 1</span></td></tr>
<tr><td>85</td><td>7</td><td><span class=low-hits>value *= 1000</span></td></tr>
<tr><td>86</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>87</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>88</td><td>6</td><td><span class=low-hits>if value >= 100 then</span></td></tr>
<tr><td>89</td><td>1</td><td><span class=low-hits>value = math.floor(value)</span></td></tr>
<tr><td>90</td><td>5</td><td><span class=low-hits>elseif value >= 10 then</span></td></tr>
<tr><td>91</td><td>1</td><td><span class=low-hits>value = math.floor(value * 1e1) / 1e1</span></td></tr>
<tr><td>92</td><td>4</td><td><span class=low-hits>elseif value >= 1 then</span></td></tr>
<tr><td>93</td><td>2</td><td><span class=low-hits>value = math.floor(value * 1e2) / 1e2</span></td></tr>
<tr><td>94</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>95</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>96</td><td>6</td><td><span class=low-hits>return value * sign, prefix_colors[order](prefixes[order] .. unit)</span></td></tr>
<tr><td>97</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>98</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>99</td><td>1</td><td><span class=low-hits>local WALL = color.gray("│")</span></td></tr>
<tr><td>100</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>101</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>102</td><td><span class='text-muted'>N/A</span></td><td>-- Testing</td>></tr>
<tr><td>103</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>104</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>105</td><td>0</td><td><span class=zero-hits>type Test = {</span></td></tr>
<tr><td>106</td><td>0</td><td><span class=zero-hits>name: string,</span></td></tr>
<tr><td>107</td><td>0</td><td><span class=zero-hits>case: Case?,</span></td></tr>
<tr><td>108</td><td>0</td><td><span class=zero-hits>cases: { Case },</span></td></tr>
<tr><td>109</td><td>0</td><td><span class=zero-hits>duration: number,</span></td></tr>
<tr><td>110</td><td>0</td><td><span class=zero-hits>error: {</span></td></tr>
<tr><td>111</td><td>0</td><td><span class=zero-hits>message: string,</span></td></tr>
<tr><td>112</td><td>0</td><td><span class=zero-hits>trace: string,</span></td></tr>
<tr><td>113</td><td>0</td><td><span class=zero-hits>}?,</span></td></tr>
<tr><td>114</td><td>0</td><td><span class=zero-hits>focus: boolean,</span></td></tr>
<tr><td>115</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>116</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>117</td><td>0</td><td><span class=zero-hits>type Case = {</span></td></tr>
<tr><td>118</td><td>0</td><td><span class=zero-hits>name: string,</span></td></tr>
<tr><td>119</td><td>0</td><td><span class=zero-hits>result: number,</span></td></tr>
<tr><td>120</td><td>0</td><td><span class=zero-hits>line: number?,</span></td></tr>
<tr><td>121</td><td>0</td><td><span class=zero-hits>focus: boolean,</span></td></tr>
<tr><td>122</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>123</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>124</td><td>1</td><td><span class=low-hits>local PASS, FAIL, NONE, ERROR, SKIPPED = 1, 2, 3, 4, 5</span></td></tr>
<tr><td>125</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>126</td><td>1</td><td><span class=low-hits>local check_for_focused = false</span></td></tr>
<tr><td>127</td><td>1</td><td><span class=low-hits>local skip = false</span></td></tr>
<tr><td>128</td><td>1</td><td><span class=low-hits>local test: Test?</span></td></tr>
<tr><td>129</td><td>1</td><td><span class=low-hits>local tests: { Test } = {}</span></td></tr>
<tr><td>130</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>131</td><td>1</td><td><span class=low-hits>local function output_test_result(test: Test)</span></td></tr>
<tr><td>132</td><td>24</td><td><span class=low-hits>if check_for_focused then</span></td></tr>
<tr><td>133</td><td>0</td><td><span class=zero-hits>local any_focused = test.focus</span></td></tr>
<tr><td>134</td><td>0</td><td><span class=zero-hits>for _, case in test.cases do</span></td></tr>
<tr><td>135</td><td>0</td><td><span class=zero-hits>any_focused = any_focused or case.focus</span></td></tr>
<tr><td>136</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>137</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>138</td><td>0</td><td><span class=zero-hits>if not any_focused then</span></td></tr>
<tr><td>139</td><td>0</td><td><span class=zero-hits>return</span></td></tr>
<tr><td>140</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>141</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>142</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>143</td><td>24</td><td><span class=low-hits>print(color.white(test.name))</span></td></tr>
<tr><td>144</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>145</td><td>24</td><td><span class=low-hits>for _, case in test.cases do</span></td></tr>
<tr><td>146</td><td>73</td><td><span class=high-hits>local status = ({</span></td></tr>
<tr><td>147</td><td>73</td><td><span class=high-hits>[PASS] = color.green("PASS"),</span></td></tr>
<tr><td>148</td><td>73</td><td><span class=high-hits>[FAIL] = color.red("FAIL"),</span></td></tr>
<tr><td>149</td><td>73</td><td><span class=high-hits>[NONE] = color.orange("NONE"),</span></td></tr>
<tr><td>150</td><td>73</td><td><span class=high-hits>[ERROR] = color.red("FAIL"),</span></td></tr>
<tr><td>151</td><td>73</td><td><span class=high-hits>[SKIPPED] = color.yellow("SKIP"),</span></td></tr>
<tr><td>152</td><td>73</td><td><span class=high-hits>})[case.result]</span></td></tr>
<tr><td>153</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>154</td><td>73</td><td><span class=high-hits>local line = case.result == FAIL and color.red(`{case.line}:`) or ""</span></td></tr>
<tr><td>155</td><td>73</td><td><span class=high-hits>if check_for_focused and case.focus == false and test.focus == false then</span></td></tr>
<tr><td>156</td><td>0</td><td><span class=zero-hits>continue</span></td></tr>
<tr><td>157</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>158</td><td>73</td><td><span class=high-hits>print(`{status}{WALL} {line}{color.gray(case.name)}`)</span></td></tr>
<tr><td>159</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>160</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>161</td><td>24</td><td><span class=low-hits>if test.error then</span></td></tr>
<tr><td>162</td><td>0</td><td><span class=zero-hits>print(color.gray("error: ") .. color.red(test.error.message))</span></td></tr>
<tr><td>163</td><td>0</td><td><span class=zero-hits>print(color.gray("trace: ") .. color.red(test.error.trace))</span></td></tr>
<tr><td>164</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>165</td><td>24</td><td><span class=low-hits>print()</span></td></tr>
<tr><td>166</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>167</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>168</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>169</td><td>1</td><td><span class=low-hits>local function CASE(name: string)</span></td></tr>
<tr><td>170</td><td>0</td><td><span class=zero-hits>skip = false</span></td></tr>
<tr><td>171</td><td>0</td><td><span class=zero-hits>assert(test, "no active test")</span></td></tr>
<tr><td>172</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>173</td><td>0</td><td><span class=zero-hits>local case = {</span></td></tr>
<tr><td>174</td><td>0</td><td><span class=zero-hits>name = name,</span></td></tr>
<tr><td>175</td><td>0</td><td><span class=zero-hits>result = NONE,</span></td></tr>
<tr><td>176</td><td>0</td><td><span class=zero-hits>focus = false,</span></td></tr>
<tr><td>177</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>178</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>179</td><td>0</td><td><span class=zero-hits>test.case = case</span></td></tr>
<tr><td>180</td><td>0</td><td><span class=zero-hits>table.insert(test.cases, case)</span></td></tr>
<tr><td>181</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>182</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>183</td><td>1</td><td><span class=low-hits>local function CHECK_EXPECT_ERR(fn, ...)</span></td></tr>
<tr><td>184</td><td>9</td><td><span class=low-hits>assert(test, "no active test")</span></td></tr>
<tr><td>185</td><td>9</td><td><span class=low-hits>local case = test.case</span></td></tr>
<tr><td>186</td><td>9</td><td><span class=low-hits>if not case then</span></td></tr>
<tr><td>187</td><td>0</td><td><span class=zero-hits>CASE("")</span></td></tr>
<tr><td>188</td><td>0</td><td><span class=zero-hits>case = test.case</span></td></tr>
<tr><td>189</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>190</td><td>9</td><td><span class=low-hits>assert(case, "no active case")</span></td></tr>
<tr><td>191</td><td>9</td><td><span class=low-hits>if case.result ~= FAIL then</span></td></tr>
<tr><td>192</td><td>9</td><td><span class=low-hits>local ok, err = pcall(fn, ...)</span></td></tr>
<tr><td>193</td><td>9</td><td><span class=low-hits>case.result = if ok then FAIL else PASS</span></td></tr>
<tr><td>194</td><td>9</td><td><span class=low-hits>if skip then</span></td></tr>
<tr><td>195</td><td>0</td><td><span class=zero-hits>case.result = SKIPPED</span></td></tr>
<tr><td>196</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>197</td><td>9</td><td><span class=low-hits>case.line = debug.info(stack and stack + 1 or 2, "l")</span></td></tr>
<tr><td>198</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>199</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>200</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>201</td><td>1</td><td><span class=low-hits>local function CHECK<T>(value: T, stack: number?): T?</span></td></tr>
<tr><td>202</td><td>1195</td><td><span class=high-hits>assert(test, "no active test")</span></td></tr>
<tr><td>203</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>204</td><td>1195</td><td><span class=high-hits>local case = test.case</span></td></tr>
<tr><td>205</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>206</td><td>1195</td><td><span class=high-hits>if not case then</span></td></tr>
<tr><td>207</td><td>9</td><td><span class=low-hits>CASE("")</span></td></tr>
<tr><td>208</td><td>9</td><td><span class=low-hits>case = test.case</span></td></tr>
<tr><td>209</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>210</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>211</td><td>1195</td><td><span class=high-hits>assert(case, "no active case")</span></td></tr>
<tr><td>212</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>213</td><td>1195</td><td><span class=high-hits>if case.result ~= FAIL then</span></td></tr>
<tr><td>214</td><td>1195</td><td><span class=high-hits>case.result = value and PASS or FAIL</span></td></tr>
<tr><td>215</td><td>1195</td><td><span class=high-hits>if skip then</span></td></tr>
<tr><td>216</td><td>1</td><td><span class=low-hits>case.result = SKIPPED</span></td></tr>
<tr><td>217</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>218</td><td>1195</td><td><span class=high-hits>case.line = debug.info(stack and stack + 1 or 2, "l")</span></td></tr>
<tr><td>219</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>220</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>221</td><td>1195</td><td><span class=high-hits>return value</span></td></tr>
<tr><td>222</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>223</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>224</td><td>1</td><td><span class=low-hits>local function TEST(name: string, fn: () -> ())</span></td></tr>
<tr><td>225</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>226</td><td>24</td><td><span class=low-hits>test = {</span></td></tr>
<tr><td>227</td><td>24</td><td><span class=low-hits>name = name,</span></td></tr>
<tr><td>228</td><td>24</td><td><span class=low-hits>cases = {},</span></td></tr>
<tr><td>229</td><td>24</td><td><span class=low-hits>duration = 0,</span></td></tr>
<tr><td>230</td><td>24</td><td><span class=low-hits>focus = false,</span></td></tr>
<tr><td>231</td><td>24</td><td><span class=low-hits>fn = fn</span></td></tr>
<tr><td>232</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>233</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>234</td><td>24</td><td><span class=low-hits>table.insert(tests, test)</span></td></tr>
<tr><td>235</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>236</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>237</td><td>1</td><td><span class=low-hits>local function FOCUS()</span></td></tr>
<tr><td>238</td><td>0</td><td><span class=zero-hits>assert(test, "no active test")</span></td></tr>
<tr><td>239</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>240</td><td>0</td><td><span class=zero-hits>check_for_focused = true</span></td></tr>
<tr><td>241</td><td>0</td><td><span class=zero-hits>if test.case then</span></td></tr>
<tr><td>242</td><td>0</td><td><span class=zero-hits>test.case.focus = true</span></td></tr>
<tr><td>243</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>244</td><td>0</td><td><span class=zero-hits>test.focus = true</span></td></tr>
<tr><td>245</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>246</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>247</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>248</td><td>1</td><td><span class=low-hits>local function FINISH(): boolean</span></td></tr>
<tr><td>249</td><td>1</td><td><span class=low-hits>local success = true</span></td></tr>
<tr><td>250</td><td>1</td><td><span class=low-hits>local total_cases = 0</span></td></tr>
<tr><td>251</td><td>1</td><td><span class=low-hits>local passed_cases = 0</span></td></tr>
<tr><td>252</td><td>1</td><td><span class=low-hits>local passed_focus_cases = 0</span></td></tr>
<tr><td>253</td><td>1</td><td><span class=low-hits>local total_focus_cases = 0</span></td></tr>
<tr><td>254</td><td>1</td><td><span class=low-hits>local duration = 0</span></td></tr>
<tr><td>255</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>256</td><td>1</td><td><span class=low-hits>for _, t in tests do</span></td></tr>
<tr><td>257</td><td>24</td><td><span class=low-hits>if check_for_focused and not t.focus then</span></td></tr>
<tr><td>258</td><td>0</td><td><span class=zero-hits>continue</span></td></tr>
<tr><td>259</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>260</td><td>24</td><td><span class=low-hits>test = t</span></td></tr>
<tr><td>261</td><td>24</td><td><span class=low-hits>fn = t.fn</span></td></tr>
<tr><td>262</td><td>24</td><td><span class=low-hits>local start = os.clock()</span></td></tr>
<tr><td>263</td><td>24</td><td><span class=low-hits>local err</span></td></tr>
<tr><td>264</td><td>24</td><td><span class=low-hits>local success = xpcall(fn, function(m: string)</span></td></tr>
<tr><td>265</td><td>0</td><td><span class=zero-hits>err = { message = m, trace = debug.traceback(nil, 2) }</span></td></tr>
<tr><td>266</td><td><span class='text-muted'>N/A</span></td><td>end)</td>></tr>
<tr><td>267</td><td>24</td><td><span class=low-hits>test.duration = os.clock() - start</span></td></tr>
<tr><td>268</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>269</td><td>24</td><td><span class=low-hits>if not test.case then</span></td></tr>
<tr><td>270</td><td>0</td><td><span class=zero-hits>CASE("")</span></td></tr>
<tr><td>271</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>272</td><td>24</td><td><span class=low-hits>assert(test.case, "no active case")</span></td></tr>
<tr><td>273</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>274</td><td>24</td><td><span class=low-hits>if not success then</span></td></tr>
<tr><td>275</td><td>0</td><td><span class=zero-hits>test.case.result = ERROR</span></td></tr>
<tr><td>276</td><td>0</td><td><span class=zero-hits>test.error = err</span></td></tr>
<tr><td>277</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>278</td><td>24</td><td><span class=low-hits>collectgarbage()</span></td></tr>
<tr><td>279</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>280</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>281</td><td>1</td><td><span class=low-hits>for _, test in tests do</span></td></tr>
<tr><td>282</td><td>24</td><td><span class=low-hits>duration += test.duration</span></td></tr>
<tr><td>283</td><td>24</td><td><span class=low-hits>for _, case in test.cases do</span></td></tr>
<tr><td>284</td><td>73</td><td><span class=high-hits>total_cases += 1</span></td></tr>
<tr><td>285</td><td>73</td><td><span class=high-hits>if case.focus or test.focus then</span></td></tr>
<tr><td>286</td><td>0</td><td><span class=zero-hits>total_focus_cases += 1</span></td></tr>
<tr><td>287</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>288</td><td>73</td><td><span class=high-hits>if case.result == PASS or case.result == NONE or case.result == SKIPPED then</span></td></tr>
<tr><td>289</td><td>73</td><td><span class=high-hits>if case.focus or test.focus then</span></td></tr>
<tr><td>290</td><td>0</td><td><span class=zero-hits>passed_focus_cases += 1</span></td></tr>
<tr><td>291</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>292</td><td>73</td><td><span class=high-hits>passed_cases += 1</span></td></tr>
<tr><td>293</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>294</td><td>0</td><td><span class=zero-hits>success = false</span></td></tr>
<tr><td>295</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>296</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>297</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>298</td><td>24</td><td><span class=low-hits>output_test_result(test)</span></td></tr>
<tr><td>299</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>300</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>301</td><td>1</td><td><span class=low-hits>print(color.gray(string.format(`{passed_cases}/{total_cases} test cases passed in %.3f ms.`, duration * 1e3)))</span></td></tr>
<tr><td>302</td><td>1</td><td><span class=low-hits>if check_for_focused then</span></td></tr>
<tr><td>303</td><td>0</td><td><span class=zero-hits>print(color.gray(`{passed_focus_cases}/{total_focus_cases} focused test cases passed`))</span></td></tr>
<tr><td>304</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>305</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>306</td><td>1</td><td><span class=low-hits>local fails = total_cases - passed_cases</span></td></tr>
<tr><td>307</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>308</td><td>1</td><td><span class=low-hits>print((fails > 0 and color.red or color.green)(`{fails} {fails == 1 and "fail" or "fails"}`))</span></td></tr>
<tr><td>309</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>310</td><td>1</td><td><span class=low-hits>check_for_focused = false</span></td></tr>
<tr><td>311</td><td>1</td><td><span class=low-hits>return success, table.clear(tests)</span></td></tr>
<tr><td>312</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>313</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>314</td><td>1</td><td><span class=low-hits>local function SKIP()</span></td></tr>
<tr><td>315</td><td>1</td><td><span class=low-hits>skip = true</span></td></tr>
<tr><td>316</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>317</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>318</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>319</td><td><span class='text-muted'>N/A</span></td><td>-- Benchmarking</td>></tr>
<tr><td>320</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>321</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>322</td><td>0</td><td><span class=zero-hits>type Bench = {</span></td></tr>
<tr><td>323</td><td>0</td><td><span class=zero-hits>time_start: number?,</span></td></tr>
<tr><td>324</td><td>0</td><td><span class=zero-hits>memory_start: number?,</span></td></tr>
<tr><td>325</td><td>0</td><td><span class=zero-hits>iterations: number?,</span></td></tr>
<tr><td>326</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>327</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>328</td><td>1</td><td><span class=low-hits>local bench: Bench?</span></td></tr>
<tr><td>329</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>330</td><td>1</td><td><span class=low-hits>function START(iter: number?): number</span></td></tr>
<tr><td>331</td><td>1</td><td><span class=low-hits>local n = iter or 1</span></td></tr>
<tr><td>332</td><td>1</td><td><span class=low-hits>assert(n > 0, "iterations must be greater than 0")</span></td></tr>
<tr><td>333</td><td>1</td><td><span class=low-hits>assert(bench, "no active benchmark")</span></td></tr>
<tr><td>334</td><td>1</td><td><span class=low-hits>assert(not bench.time_start, "clock was already started")</span></td></tr>
<tr><td>335</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>336</td><td>1</td><td><span class=low-hits>bench.iterations = n</span></td></tr>
<tr><td>337</td><td>1</td><td><span class=low-hits>bench.memory_start = gcinfo()</span></td></tr>
<tr><td>338</td><td>1</td><td><span class=low-hits>bench.time_start = os.clock()</span></td></tr>
<tr><td>339</td><td>1</td><td><span class=low-hits>return n</span></td></tr>
<tr><td>340</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>341</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>342</td><td>1</td><td><span class=low-hits>local function BENCH(name: string, fn: () -> ())</span></td></tr>
<tr><td>343</td><td>3</td><td><span class=low-hits>local active = bench</span></td></tr>
<tr><td>344</td><td>3</td><td><span class=low-hits>assert(not active, "a benchmark is already in progress")</span></td></tr>
<tr><td>345</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>346</td><td>3</td><td><span class=low-hits>bench = {}</span></td></tr>
<tr><td>347</td><td>3</td><td><span class=low-hits>assert(bench);</span></td></tr>
<tr><td>348</td><td>3</td><td><span class=low-hits>(collectgarbage :: any)("collect")</span></td></tr>
<tr><td>349</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>350</td><td>3</td><td><span class=low-hits>local mem_start = gcinfo()</span></td></tr>
<tr><td>351</td><td>3</td><td><span class=low-hits>local time_start = os.clock()</span></td></tr>
<tr><td>352</td><td>3</td><td><span class=low-hits>local err_msg: string?</span></td></tr>
<tr><td>353</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>354</td><td>3</td><td><span class=low-hits>local success = xpcall(fn, function(m: string)</span></td></tr>
<tr><td>355</td><td>0</td><td><span class=zero-hits>err_msg = m .. debug.traceback(nil, 2)</span></td></tr>
<tr><td>356</td><td><span class='text-muted'>N/A</span></td><td>end)</td>></tr>
<tr><td>357</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>358</td><td>3</td><td><span class=low-hits>local time_stop = os.clock()</span></td></tr>
<tr><td>359</td><td>3</td><td><span class=low-hits>local mem_stop = gcinfo()</span></td></tr>
<tr><td>360</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>361</td><td>3</td><td><span class=low-hits>if not success then</span></td></tr>
<tr><td>362</td><td>0</td><td><span class=zero-hits>print(`{WALL}{color.red("ERROR")}{WALL} {name}`)</span></td></tr>
<tr><td>363</td><td>0</td><td><span class=zero-hits>print(color.gray(err_msg :: string))</span></td></tr>
<tr><td>364</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>365</td><td>3</td><td><span class=low-hits>time_start = bench.time_start or time_start</span></td></tr>
<tr><td>366</td><td>3</td><td><span class=low-hits>mem_start = bench.memory_start or mem_start</span></td></tr>
<tr><td>367</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>368</td><td>3</td><td><span class=low-hits>local n = bench.iterations or 1</span></td></tr>
<tr><td>369</td><td>3</td><td><span class=low-hits>local d, d_unit = convert_units("s", (time_stop - time_start) / n)</span></td></tr>
<tr><td>370</td><td>3</td><td><span class=low-hits>local a, a_unit = convert_units("B", math.round((mem_stop - mem_start) / n * 1e3))</span></td></tr>
<tr><td>371</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>372</td><td>3</td><td><span class=low-hits>local function round(x: number): string</span></td></tr>
<tr><td>373</td><td>0</td><td><span class=zero-hits>return x > 0 and x < 10 and (x - math.floor(x)) > 0 and string.format("%2.1f", x)</span></td></tr>
<tr><td>374</td><td>0</td><td><span class=zero-hits>or string.format("%3.f", x)</span></td></tr>
<tr><td>375</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>376</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>377</td><td>3</td><td><span class=low-hits>print(</span></td></tr>
<tr><td>378</td><td>3</td><td><span class=low-hits>string.format(</span></td></tr>
<tr><td>379</td><td>3</td><td><span class=low-hits>`%s %s %s %s{WALL} %s`,</span></td></tr>
<tr><td>380</td><td>3</td><td><span class=low-hits>color.gray(round(d)),</span></td></tr>
<tr><td>381</td><td>3</td><td><span class=low-hits>d_unit,</span></td></tr>
<tr><td>382</td><td>3</td><td><span class=low-hits>color.gray(round(a)),</span></td></tr>
<tr><td>383</td><td>3</td><td><span class=low-hits>a_unit,</span></td></tr>
<tr><td>384</td><td>3</td><td><span class=low-hits>color.gray(name)</span></td></tr>
<tr><td>385</td><td>0</td><td><span class=zero-hits>)</span></td></tr>
<tr><td>386</td><td>0</td><td><span class=zero-hits>)</span></td></tr>
<tr><td>387</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>388</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>389</td><td>3</td><td><span class=low-hits>bench = nil</span></td></tr>
<tr><td>390</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>391</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>392</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>393</td><td><span class='text-muted'>N/A</span></td><td>-- Printing</td>></tr>
<tr><td>394</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>395</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>396</td><td>1</td><td><span class=low-hits>local function print2(v: unknown)</span></td></tr>
<tr><td>397</td><td>0</td><td><span class=zero-hits>type Buffer = { n: number, [number]: string }</span></td></tr>
<tr><td>398</td><td>0</td><td><span class=zero-hits>type Cyclic = { n: number, [{}]: number }</span></td></tr>
<tr><td>399</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>400</td><td><span class='text-muted'>N/A</span></td><td>-- overkill concatenationless string buffer</td>></tr>
<tr><td>401</td><td>0</td><td><span class=zero-hits>local function tos(value: any, stack: number, str: Buffer, cyclic: Cyclic)</span></td></tr>
<tr><td>402</td><td>0</td><td><span class=zero-hits>local TAB = " "</span></td></tr>
<tr><td>403</td><td>0</td><td><span class=zero-hits>local indent = table.concat(table.create(stack, TAB))</span></td></tr>
<tr><td>404</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>405</td><td>0</td><td><span class=zero-hits>if type(value) == "string" then</span></td></tr>
<tr><td>406</td><td>0</td><td><span class=zero-hits>local n = str.n</span></td></tr>
<tr><td>407</td><td>0</td><td><span class=zero-hits>str[n + 1] = "\""</span></td></tr>
<tr><td>408</td><td>0</td><td><span class=zero-hits>str[n + 2] = value</span></td></tr>
<tr><td>409</td><td>0</td><td><span class=zero-hits>str[n + 3] = "\""</span></td></tr>
<tr><td>410</td><td>0</td><td><span class=zero-hits>str.n = n + 3</span></td></tr>
<tr><td>411</td><td>0</td><td><span class=zero-hits>elseif type(value) ~= "table" then</span></td></tr>
<tr><td>412</td><td>0</td><td><span class=zero-hits>local n = str.n</span></td></tr>
<tr><td>413</td><td>0</td><td><span class=zero-hits>str[n + 1] = value == nil and "nil" or tostring(value)</span></td></tr>
<tr><td>414</td><td>0</td><td><span class=zero-hits>str.n = n + 1</span></td></tr>
<tr><td>415</td><td>0</td><td><span class=zero-hits>elseif next(value) == nil then</span></td></tr>
<tr><td>416</td><td>0</td><td><span class=zero-hits>local n = str.n</span></td></tr>
<tr><td>417</td><td>0</td><td><span class=zero-hits>str[n + 1] = "{}"</span></td></tr>
<tr><td>418</td><td>0</td><td><span class=zero-hits>str.n = n + 1</span></td></tr>
<tr><td>419</td><td>0</td><td><span class=zero-hits>else -- is table</span></td></tr>
<tr><td>420</td><td>0</td><td><span class=zero-hits>local tabbed_indent = indent .. TAB</span></td></tr>
<tr><td>421</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>422</td><td>0</td><td><span class=zero-hits>if cyclic[value] then</span></td></tr>
<tr><td>423</td><td>0</td><td><span class=zero-hits>str.n += 1</span></td></tr>
<tr><td>424</td><td>0</td><td><span class=zero-hits>str[str.n] = color.gray(`CYCLIC REF {cyclic[value]}`)</span></td></tr>
<tr><td>425</td><td>0</td><td><span class=zero-hits>return</span></td></tr>
<tr><td>426</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>427</td><td>0</td><td><span class=zero-hits>cyclic.n += 1</span></td></tr>
<tr><td>428</td><td>0</td><td><span class=zero-hits>cyclic[value] = cyclic.n</span></td></tr>
<tr><td>429</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>430</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>431</td><td>0</td><td><span class=zero-hits>str.n += 3</span></td></tr>
<tr><td>432</td><td>0</td><td><span class=zero-hits>str[str.n - 2] = "{ "</span></td></tr>
<tr><td>433</td><td>0</td><td><span class=zero-hits>str[str.n - 1] = color.gray(tostring(cyclic[value]))</span></td></tr>
<tr><td>434</td><td>0</td><td><span class=zero-hits>str[str.n - 0] = "\n"</span></td></tr>
<tr><td>435</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>436</td><td>0</td><td><span class=zero-hits>local i, v = next(value, nil)</span></td></tr>
<tr><td>437</td><td>0</td><td><span class=zero-hits>while v ~= nil do</span></td></tr>
<tr><td>438</td><td>0</td><td><span class=zero-hits>local n = str.n</span></td></tr>
<tr><td>439</td><td>0</td><td><span class=zero-hits>str[n + 1] = tabbed_indent</span></td></tr>
<tr><td>440</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>441</td><td>0</td><td><span class=zero-hits>if type(i) ~= "string" then</span></td></tr>
<tr><td>442</td><td>0</td><td><span class=zero-hits>str[n + 2] = "["</span></td></tr>
<tr><td>443</td><td>0</td><td><span class=zero-hits>str[n + 3] = tostring(i)</span></td></tr>
<tr><td>444</td><td>0</td><td><span class=zero-hits>str[n + 4] = "]"</span></td></tr>
<tr><td>445</td><td>0</td><td><span class=zero-hits>n += 4</span></td></tr>
<tr><td>446</td><td>0</td><td><span class=zero-hits>else</span></td></tr>
<tr><td>447</td><td>0</td><td><span class=zero-hits>str[n + 2] = tostring(i)</span></td></tr>
<tr><td>448</td><td>0</td><td><span class=zero-hits>n += 2</span></td></tr>
<tr><td>449</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>450</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>451</td><td>0</td><td><span class=zero-hits>str[n + 1] = " = "</span></td></tr>
<tr><td>452</td><td>0</td><td><span class=zero-hits>str.n = n + 1</span></td></tr>
<tr><td>453</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>454</td><td>0</td><td><span class=zero-hits>tos(v, stack + 1, str, cyclic)</span></td></tr>
<tr><td>455</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>456</td><td>0</td><td><span class=zero-hits>i, v = next(value, i)</span></td></tr>
<tr><td>457</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>458</td><td>0</td><td><span class=zero-hits>n = str.n</span></td></tr>
<tr><td>459</td><td>0</td><td><span class=zero-hits>str[n + 1] = v ~= nil and ",\n" or "\n"</span></td></tr>
<tr><td>460</td><td>0</td><td><span class=zero-hits>str.n = n + 1</span></td></tr>
<tr><td>461</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>462</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>463</td><td>0</td><td><span class=zero-hits>local n = str.n</span></td></tr>
<tr><td>464</td><td>0</td><td><span class=zero-hits>str[n + 1] = indent</span></td></tr>
<tr><td>465</td><td>0</td><td><span class=zero-hits>str[n + 2] = "}"</span></td></tr>
<tr><td>466</td><td>0</td><td><span class=zero-hits>str.n = n + 2</span></td></tr>
<tr><td>467</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>468</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>469</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>470</td><td>0</td><td><span class=zero-hits>local str = { n = 0 }</span></td></tr>
<tr><td>471</td><td>0</td><td><span class=zero-hits>local cyclic = { n = 0 }</span></td></tr>
<tr><td>472</td><td>0</td><td><span class=zero-hits>tos(v, 0, str, cyclic)</span></td></tr>
<tr><td>473</td><td>0</td><td><span class=zero-hits>print(table.concat(str))</span></td></tr>
<tr><td>474</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>475</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>476</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>477</td><td><span class='text-muted'>N/A</span></td><td>-- Equality</td>></tr>
<tr><td>478</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>479</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>480</td><td>1</td><td><span class=low-hits>local function shallow_eq(a: {}, b: {}): boolean</span></td></tr>
<tr><td>481</td><td>0</td><td><span class=zero-hits>if #a ~= #b then</span></td></tr>
<tr><td>482</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>483</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>484</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>485</td><td>0</td><td><span class=zero-hits>for i, v in next, a do</span></td></tr>
<tr><td>486</td><td>0</td><td><span class=zero-hits>if b[i] ~= v then</span></td></tr>
<tr><td>487</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>488</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>489</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>490</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>491</td><td>0</td><td><span class=zero-hits>for i, v in next, b do</span></td></tr>
<tr><td>492</td><td>0</td><td><span class=zero-hits>if a[i] ~= v then</span></td></tr>
<tr><td>493</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>494</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>495</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>496</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>497</td><td>0</td><td><span class=zero-hits>return true</span></td></tr>
<tr><td>498</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>499</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>500</td><td>1</td><td><span class=low-hits>local function deep_eq(a: {}, b: {}): boolean</span></td></tr>
<tr><td>501</td><td>0</td><td><span class=zero-hits>if #a ~= #b then</span></td></tr>
<tr><td>502</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>503</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>504</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>505</td><td>0</td><td><span class=zero-hits>for i, v in next, a do</span></td></tr>
<tr><td>506</td><td>0</td><td><span class=zero-hits>if type(b[i]) == "table" and type(v) == "table" then</span></td></tr>
<tr><td>507</td><td>0</td><td><span class=zero-hits>if deep_eq(b[i], v) == false then</span></td></tr>
<tr><td>508</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>509</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>510</td><td>0</td><td><span class=zero-hits>elseif b[i] ~= v then</span></td></tr>
<tr><td>511</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>512</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>513</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>514</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>515</td><td>0</td><td><span class=zero-hits>for i, v in next, b do</span></td></tr>
<tr><td>516</td><td>0</td><td><span class=zero-hits>if type(a[i]) == "table" and type(v) == "table" then</span></td></tr>
<tr><td>517</td><td>0</td><td><span class=zero-hits>if deep_eq(a[i], v) == false then</span></td></tr>
<tr><td>518</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>519</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>520</td><td>0</td><td><span class=zero-hits>elseif a[i] ~= v then</span></td></tr>
<tr><td>521</td><td>0</td><td><span class=zero-hits>return false</span></td></tr>
<tr><td>522</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>523</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>524</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>525</td><td>0</td><td><span class=zero-hits>return true</span></td></tr>
<tr><td>526</td><td><span class='text-muted'>N/A</span></td><td>end</td>></tr>
<tr><td>527</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>528</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>529</td><td><span class='text-muted'>N/A</span></td><td>-- Return</td>></tr>
<tr><td>530</td><td><span class='text-muted'>N/A</span></td><td>--------------------------------------------------------------------------------</td>></tr>
<tr><td>531</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>532</td><td>1</td><td><span class=low-hits>return {</span></td></tr>
<tr><td>533</td><td>1</td><td><span class=low-hits>test = function()</span></td></tr>
<tr><td>534</td><td>1</td><td><span class=low-hits>return {</span></td></tr>
<tr><td>535</td><td>1</td><td><span class=low-hits>TEST = TEST,</span></td></tr>
<tr><td>536</td><td>1</td><td><span class=low-hits>CASE = CASE,</span></td></tr>
<tr><td>537</td><td>1</td><td><span class=low-hits>CHECK = CHECK,</span></td></tr>
<tr><td>538</td><td>1</td><td><span class=low-hits>FINISH = FINISH,</span></td></tr>
<tr><td>539</td><td>1</td><td><span class=low-hits>SKIP = SKIP,</span></td></tr>
<tr><td>540</td><td>1</td><td><span class=low-hits>FOCUS = FOCUS,</span></td></tr>
<tr><td>541</td><td>1</td><td><span class=low-hits>CHECK_EXPECT_ERR = CHECK_EXPECT_ERR,</span></td></tr>
<tr><td>542</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
<tr><td>543</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>544</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>545</td><td>1</td><td><span class=low-hits>benchmark = function()</span></td></tr>
<tr><td>546</td><td>1</td><td><span class=low-hits>return BENCH, START</span></td></tr>
<tr><td>547</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>548</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>549</td><td>1</td><td><span class=low-hits>disable_formatting = function()</span></td></tr>
<tr><td>550</td><td>0</td><td><span class=zero-hits>disable_ansi = true</span></td></tr>
<tr><td>551</td><td><span class='text-muted'>N/A</span></td><td>end,</td>></tr>
<tr><td>552</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>553</td><td>1</td><td><span class=low-hits>print = print2,</span></td></tr>
<tr><td>554</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>555</td><td>1</td><td><span class=low-hits>seq = shallow_eq,</span></td></tr>
<tr><td>556</td><td>1</td><td><span class=low-hits>deq = deep_eq,</span></td></tr>
<tr><td>557</td><td><span class='text-muted'>N/A</span></td><td></td>></tr>
<tr><td>558</td><td>1</td><td><span class=low-hits>color = color,</span></td></tr>
<tr><td>559</td><td>0</td><td><span class=zero-hits>}</span></td></tr>
</tbody></table></body></html>

2040
coverage/tests.luau.html vendored Normal file

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

View file

@ -1109,6 +1109,76 @@ TEST("world:clear()", function()
CHECK(world:get(e1, A) == nil) CHECK(world:get(e1, A) == nil)
CHECK(world:get(e1, B)) CHECK(world:get(e1, B))
end end
do CASE("remove cleared ID from entities")
local world = world_new()
local A = world:component()
local B = world:component()
local C = world:component()
do
local id1 = world:entity()
local id2 = world:entity()
local id3 = world:entity()
world:set(id1, A, true)
world:set(id2, A, true)
world:set(id2, B, true)
world:set(id3, A, true)
world:set(id3, B, true)
world:set(id3, C, true)
world:clear(A)
CHECK(not world:has(id1, A))
CHECK(not world:has(id2, A))
CHECK(not world:has(id3, A))
CHECK(world:has(id2, B))
CHECK(world:has(id3, B, C))
world:clear(C)
CHECK(world:has(id2, B))
CHECK(world:has(id3, B))
CHECK(world:contains(A))
CHECK(world:contains(C))
CHECK(world:has(A, jecs.Component))
CHECK(world:has(B, jecs.Component))
end
do
local id1 = world:entity()
local id2 = world:entity()
local id3 = world:entity()
local tgt = world:entity()
world:add(id1, pair(A, tgt))
world:add(id1, pair(B, tgt))
world:add(id1, pair(C, tgt))
world:add(id2, pair(A, tgt))
world:add(id2, pair(B, tgt))
world:add(id2, pair(C, tgt))
world:add(id3, pair(A, tgt))
world:add(id3, pair(B, tgt))
world:add(id3, pair(C, tgt))
world:clear(B)
CHECK(world:has(id1, pair(A, tgt), pair(C, tgt)))
CHECK(not world:has(id1, pair(B, tgt)))
CHECK(world:has(id2, pair(A, tgt), pair(C, tgt)))
CHECK(not world:has(id1, pair(B, tgt)))
CHECK(world:has(id3, pair(A, tgt), pair(C, tgt)))
end
end
end) end)
TEST("world:has()", function() TEST("world:has()", function()
@ -1221,8 +1291,7 @@ TEST("world:delete", function()
CHECK(not world:contains(tag)) CHECK(not world:contains(tag))
CHECK(not world:has(entity, tag)) -- => true CHECK(not world:has(entity, tag)) -- => true
end end
do do CASE("should allow deleting components")
CASE("should allow deleting components")
local world = jecs.World.new() local world = jecs.World.new()
local Health = world:component() local Health = world:component()
@ -1244,8 +1313,7 @@ TEST("world:delete", function()
CHECK(world:get(id1, Health) == 50) CHECK(world:get(id1, Health) == 50)
end end
do do CASE("delete entities using another Entity as component with Delete cleanup action")
CASE("delete entities using another Entity as component with Delete cleanup action")
local world = jecs.World.new() local world = jecs.World.new()
local Health = world:entity() local Health = world:entity()
@ -1278,8 +1346,8 @@ TEST("world:delete", function()
CHECK(not world:has(id1, Health)) CHECK(not world:has(id1, Health))
end end
do
CASE("delete children") do CASE("delete children")
local world = jecs.World.new() local world = jecs.World.new()
local Health = world:component() local Health = world:component()
@ -1332,6 +1400,100 @@ TEST("world:delete", function()
end end
end end
do CASE("remove deleted ID from entities")
local world = world_new()
do
local A = world:component()
local B = world:component()
local C = world:component()
local id1 = world:entity()
local id2 = world:entity()
local id3 = world:entity()
world:set(id1, A, true)
world:set(id2, A, true)
world:set(id2, B, true)
world:set(id3, A, true)
world:set(id3, B, true)
world:set(id3, C, true)
world:delete(A)
CHECK(not world:has(id1, A))
CHECK(not world:has(id2, A))
CHECK(not world:has(id3, A))
CHECK(world:has(id2, B))
CHECK(world:has(id3, B, C))
world:delete(C)
CHECK(world:has(id2, B))
CHECK(world:has(id3, B))
CHECK(not world:contains(A))
CHECK(not world:contains(C))
end
do
local A = world:component()
world:add(A, pair(jecs.OnDeleteTarget, jecs.Delete))
local B = world:component()
local C = world:component()
world:add(C, pair(jecs.OnDeleteTarget, jecs.Delete))
local id1 = world:entity()
local id2 = world:entity()
local id3 = world:entity()
world:set(id1, C, true)
world:set(id2, pair(A, id1), true)
world:set(id2, B, true)
world:set(id3, B, true)
world:set(id3, pair(C, id2), true)
world:delete(id1)
CHECK(not world:contains(id1))
CHECK(not world:contains(id2))
CHECK(not world:contains(id3))
end
do
local A = world:component()
local B = world:component()
local C = world:component()
local id1 = world:entity()
local id2 = world:entity()
local id3 = world:entity()
world:set(id2, A, true)
world:set(id2, pair(B, id1), true)
world:set(id3, A, true)
world:set(id3, pair(B, id1), true)
world:set(id3, C, true)
world:delete(id1)
CHECK(not world:contains(id1))
CHECK(world:contains(id2))
CHECK(world:contains(id3))
CHECK(world:has(id2, A))
CHECK(world:has(id3, A, C))
CHECK(not world:target(id2, B))
CHECK(not world:target(id3, B))
end
end
do do
CASE("fast delete") CASE("fast delete")
local world = jecs.World.new() local world = jecs.World.new()

148
tools/read_lcov.py Normal file
View file

@ -0,0 +1,148 @@
import os
LCOV_FILE = "coverage.out"
OUTPUT_DIR = "coverage"
os.makedirs(OUTPUT_DIR, exist_ok=True)
def parse_lcov(content):
"""Parses LCOV data from a single string."""
files = {}
current_file = None
for line in content.splitlines():
if line.startswith("SF:"):
current_file = line[3:].strip()
files[current_file] = {"coverage": {}, "functions": []}
elif line.startswith("DA:") and current_file:
parts = line[3:].split(",")
line_num = int(parts[0])
execution_count = int(parts[1])
files[current_file]["coverage"][line_num] = execution_count
elif line.startswith("FN:") and current_file:
parts = line[3:].split(",")
line_num = int(parts[0])
function_name = parts[1].strip()
files[current_file]["functions"].append({"name": function_name, "line": line_num, "hits": 0})
elif line.startswith("FNDA:") and current_file:
parts = line[5:].split(",")
hit_count = int(parts[0])
function_name = parts[1].strip()
for func in files[current_file]["functions"]:
if func["name"] == function_name:
func["hits"] = hit_count
break
return files
def read_source_file(filepath):
"""Reads source file content if available."""
if not os.path.exists(filepath):
return []
with open(filepath, "r", encoding="utf-8") as f:
return f.readlines()
def generate_file_html(filepath, coverage_data, functions_data):
"""Generates an HTML file for a specific source file."""
filename = os.path.basename(filepath)
source_code = read_source_file(filepath)
html_path = os.path.join(OUTPUT_DIR, f"{filename}.html")
total_hits = sum(func["hits"] for func in functions_data)
max_hits = max((func["hits"] for func in functions_data), default=0)
total_functions = len(functions_data)
covered_functions = sum(1 for func in functions_data if func["hits"] > 0)
function_coverage_percent = (covered_functions / total_functions * 100) if total_functions > 0 else 0
lines = [
"<html><head>",
'<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">',
'<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/js/bootstrap.bundle.min.js"></script>',
"<style>",
"body { font-family: monospace; font-size: 16px; }",
".zero-hits { background-color: #fcc; font-weight: bold; color: red; }", # Red for functions with 0 hits
".nonzero-hits { color: green; font-weight: bold; }", # Green for nonzero hit functions
".low-hits { background-color: #ffe6b3; }", # Yellow for low-hit functions
".high-hits { background-color: #cfc; }", # Green for high-hit functions
"th, td { padding: 0px; font-size: 12px; }",
"table.table { font-size: 14px; border-collapse: collapse; }",
"table.table th, table.table td { padding: 1px; font-size: 12px; line-height: 1.2; }",
"table.table tr { height: auto; }",
"</style></head><body>",
f'<h1 class="text-center">{filename} Coverage</h1>',
f'<h2>Total Execution Hits: {total_hits}</h2>',
f'<h2>Function Coverage Overview: {function_coverage_percent:.2f}%</h2>',
'<button class="btn btn-primary mb-2" type="button" data-bs-toggle="collapse" data-bs-target="#funcTable">'
'Toggle Function Coverage</button>',
'<div class="collapse show" id="funcTable">',
'<h2>Function Coverage:</h2><table class="table table-bordered"><thead><tr><th>Function</th><th>Hits</th></tr></thead><tbody>'
]
longest_name = max((len(func["name"]) for func in functions_data), default=0)
for func in functions_data:
hit_color = "red" if func["hits"] == 0 else "green"
lines.append(
f'<tr><td style="padding: 1px; min-width: {longest_name}ch;">{func["name"]}</td>'
f'<td style="padding: 1px; color: {hit_color}; font-weight: bold;">{func["hits"]}</td></tr>'
)
lines.append('</tbody></table></div>') # Close collapsible div
lines.append('<h2>Source Code:</h2><table class="table table-bordered"><thead><tr><th>Line</th><th>Hits</th><th>Code</th></tr></thead><tbody>')
for i, line in enumerate(source_code, start=1):
stripped_line = line.strip()
class_name = "text-muted"
if not stripped_line or stripped_line.startswith("end") or stripped_line.startswith("--"):
count_display = "<span class='text-muted'>N/A</span>"
lines.append(f'<tr><td>{i}</td><td>{count_display}</td><td>{line.strip()}</td>></tr>')
else:
count = coverage_data.get(i, 0)
class_name = "zero-hits" if count == 0 else "low-hits" if count < max_hits * 0.3 else "high-hits"
count_display = f'{count}'
marked_text = f'<span class={class_name}>{line.strip()}</span>'
lines.append(f'<tr><td>{i}</td><td>{count_display}</td><td>{marked_text}</td></tr>')
lines.append("</tbody></table></body></html>")
with open(html_path, "w", encoding="utf-8") as f:
f.write("\n".join(lines))
def generate_index(files):
"""Generates an index.html summarizing the coverage."""
index_html = [
"<html><head>",
'<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.0/css/bootstrap.min.css">',
"</head><body>",
'<h1 class="text-center">Coverage Report</h1>',
'<table class="table table-striped table-bordered"><thead><tr><th>File</th><th>Total Hits</th><th>Functions</th></tr></thead><tbody>'
]
for filepath, data in files.items():
filename = os.path.basename(filepath)
total_hits = sum(func["hits"] for func in data["functions"])
total_functions = len(data["functions"])
index_html.append(f'<tr><td><a href="{filename}.html">{filename}</a></td><td>{total_hits}</td><td>{total_functions}</td></tr>')
index_html.append("</tbody></table></body></html>")
with open(os.path.join(OUTPUT_DIR, "index.html"), "w", encoding="utf-8") as f:
f.write("\n".join(index_html))
with open(LCOV_FILE, "r", encoding="utf-8") as f:
lcov_content = f.read()
files_data = parse_lcov(lcov_content)
for file_path, data in files_data.items():
generate_file_html(file_path, data["coverage"], data["functions"])
generate_index(files_data)
print(f"Coverage report generated in {OUTPUT_DIR}/index.html")