| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta name="viewport" content="width=device-width,initial-scale=1"> |
| <meta charset="UTF-8"> |
| <link rel="stylesheet" type="text/css" href="/coverage-style.css"> |
| </head> |
| <body> |
| <h1 class="coverage-header">Combined Unit Test</h1> |
| <div class="coverage-subheader">/mnt/pd0/work/skia/foo/main.cpp @ <a href="https://skia.googlesource.com/skia/+/98776ab3" target="_blank">98776ab3</a></div> |
| <table class="coverage-table"> |
| <thead> |
| <tr> |
| <th>Line</th> |
| <th>Covered?</th> |
| <th>Source</th> |
| </tr> |
| </thead> |
| <tbody> |
| |
| <tr class="covered-"> |
| <td>1</td> |
| <td class="covered-"></td> |
| <td><pre>// Based off of real world DM data</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>2</td> |
| <td class="covered-"></td> |
| <td><pre></pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>3</td> |
| <td class="covered-"></td> |
| <td><pre>#include "DMJsonWriter.h"</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>4</td> |
| <td class="covered-"></td> |
| <td><pre>#include "DMSrcSink.h"</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>5</td> |
| <td class="covered-"></td> |
| <td><pre>template <typename... Args></pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>6</td> |
| <td class="covered-yes">yes</td> |
| <td><pre>static void vlog(const char* fmt, Args&&... args) {</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>7</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> if (gVLog) {</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>8</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> char s[64];</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>9</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> HumanizeMs(s, 64, SkTime::GetMSecs() - kStartMs);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>10</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> fprintf(gVLog, "%s\t", s);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>11</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> fprintf(gVLog, fmt, args...);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>12</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> fflush(gVLog);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>13</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> }</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>14</td> |
| <td class="covered-yes">yes</td> |
| <td><pre>}</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>15</td> |
| <td class="covered-yes">yes</td> |
| <td><pre>static void fail(const SkString& err) {</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>16</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> SkAutoMutexAcquire lock(gFailuresMutex);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>17</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> SkDebugf("\n\nFAILURE: %s\n\n", err.c_str());</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>18</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> gFailures.push_back(err);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>19</td> |
| <td class="covered-yes">yes</td> |
| <td><pre>}</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>20</td> |
| <td class="covered-"></td> |
| <td><pre></pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>21</td> |
| <td class="covered-"></td> |
| <td><pre>struct Running {</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>22</td> |
| <td class="covered-"></td> |
| <td><pre> SkString id;</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>23</td> |
| <td class="covered-"></td> |
| <td><pre> SkThreadID thread;</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>24</td> |
| <td class="covered-"></td> |
| <td><pre></pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>25</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> void dump() const {</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>26</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> info("\t%s\n", id.c_str());</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>27</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> }</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>28</td> |
| <td class="covered-"></td> |
| <td><pre>};</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>29</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> #if !defined(SK_BUILD_FOR_ANDROID)</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>30</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> void* stack[64];</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>31</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> int count = backtrace(stack, SK_ARRAY_COUNT(stack));</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>32</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> char** symbols = backtrace_symbols(stack, count);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>33</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> info("\nStack trace:\n");</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>34</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> for (int i = 0; i < count; i++) {</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>35</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> info(" %s\n", symbols[i]);</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>36</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> }</pre></td> |
| </tr> |
| |
| <tr class="covered-"> |
| <td>37</td> |
| <td class="covered-"></td> |
| <td><pre> #else</pre></td> |
| </tr> |
| |
| <tr class="covered-yes"> |
| <td>38</td> |
| <td class="covered-yes">yes</td> |
| <td><pre> fflush(stdout);</pre></td> |
| </tr> |
| |
| <tr class="covered-no"> |
| <td>39</td> |
| <td class="covered-no">no</td> |
| <td><pre> #endif</pre></td> |
| </tr> |
| |
| <tr class="covered-no"> |
| <td>40</td> |
| <td class="covered-no">no</td> |
| <td><pre> signal(sig, previous_handler[sig]);</pre></td> |
| </tr> |
| |
| <tr class="covered-no"> |
| <td>41</td> |
| <td class="covered-no">no</td> |
| <td><pre> raise(sig);</pre></td> |
| </tr> |
| |
| <tr class="covered-no"> |
| <td>42</td> |
| <td class="covered-no">no</td> |
| <td><pre> }</pre></td> |
| </tr> |
| |
| </tbody> |
| </table> |
| </body> |
| </html> |