[TIMOB-14989] Code Processor: Investigate efficacy of multi-pass analysis
GitHub Issue | n/a |
---|---|
Type | Story |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2013-08-30T19:22:18.000+0000 |
Affected Version/s | n/a |
Fix Version/s | 2013 Sprint 18, 2013 Sprint 18 Tooling |
Components | Code Processor |
Labels | n/a |
Reporter | Ingo Muschenetz |
Assignee | Matt Langston |
Created | 2013-08-28T21:58:13.000+0000 |
Updated | 2014-02-04T01:09:21.000+0000 |
Description
To aid in increasing the accuracy of the code processor, a multi-pass mechanism could be implemented that will attempt to determine all of the functions in the project and where they are called from. This information will be fed into the final pass, which is the current implementation of the code processor. This information should help greatly in solving the following:
function a() {
console.log('hi');
}
function b() {
console.log('world');
}
if (platform =='iphone') {
a();
} else {
b();
}
which currently reports less than 100% coverage because either a or b will be unvisited. The information from the previous passes can be fed into the code processor so we can determine that b was called from the skipped block, and thus we can mark it as skipped.
Estimates of the impact this fix will have on Samples and Templates: Sample.Mapping Currently: 84.4% Estimated: 95% (there is a separate bug, TIMOB-15011 that should take care of the rest) Sample.RSS Currently: 56.7% Estimated: 99% Sample.TODO Currently: 96.4% Estimated: 96.4% (TIMOB-15012 is responsible for the remaining) Templated.HTML Currently: 91.9% Estimated: 91.9% (TIMOB-15013 is responsible for the remaining) Template.MasterDetail Currently: 55.0% Estimated: 100% Template.SingleWindow Currently: 70.8% Estimated: 100% Template.Tabbed Currently: 77.7% Estimated: 100%
Resolution: created TIMOB-15017 to address the issue.
Investigation ticket. Closing.