test using jQuery and coverage passes and covers all!

master
Matt Huntington 12 years ago
parent 7298ed3a03
commit 2e4eaa0000

@ -1 +1 @@
{"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js":{"b":{},"branchMap":{},"code":["(function () { (function($){","\t$(function(){","\t\t$('h1').click(function(){","\t\t\t$('body').append('<div>added through jquery</div>');","\t\t})","\t});","})(jQuery);","}());"],"f":{"1":1,"2":1,"3":0},"fnMap":{"1":{"line":1,"loc":{"end":{"column":12,"line":1},"start":{"column":1,"line":1}},"name":"(anonymous_1)"},"2":{"line":2,"loc":{"end":{"column":13,"line":2},"start":{"column":3,"line":2}},"name":"(anonymous_2)"},"3":{"line":3,"loc":{"end":{"column":26,"line":3},"start":{"column":16,"line":3}},"name":"(anonymous_3)"}},"path":"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js","s":{"1":1,"2":1,"3":1,"4":0},"statementMap":{"1":{"end":{"column":11,"line":7},"start":{"column":0,"line":1}},"2":{"end":{"column":4,"line":6},"start":{"column":1,"line":2}},"3":{"end":{"column":1,"line":6},"start":{"column":2,"line":3}},"4":{"end":{"column":55,"line":4},"start":{"column":3,"line":4}}}}}
{"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js":{"b":{},"branchMap":{},"code":["(function () { (function($){","\t$(function(){","\t\t$('a').click(function(){","\t\t\t$('body').append('<div id=\"jQueryAddedDiv\">added through jquery</div>');","\t\t})","\t});","})(jQuery);","}());"],"f":{"1":1,"2":1,"3":1},"fnMap":{"1":{"line":1,"loc":{"end":{"column":12,"line":1},"start":{"column":1,"line":1}},"name":"(anonymous_1)"},"2":{"line":2,"loc":{"end":{"column":13,"line":2},"start":{"column":3,"line":2}},"name":"(anonymous_2)"},"3":{"line":3,"loc":{"end":{"column":25,"line":3},"start":{"column":15,"line":3}},"name":"(anonymous_3)"}},"path":"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js","s":{"1":1,"2":1,"3":1,"4":1},"statementMap":{"1":{"end":{"column":11,"line":7},"start":{"column":0,"line":1}},"2":{"end":{"column":4,"line":6},"start":{"column":1,"line":2}},"3":{"end":{"column":1,"line":6},"start":{"column":2,"line":3}},"4":{"end":{"column":75,"line":4},"start":{"column":3,"line":4}}}}}

@ -195,20 +195,20 @@
</style>
</head>
<body>
<div class="header medium">
<div class="header high">
<h1>Code coverage report for <span class="entity">All files</span></h1>
<h2>
Statements: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Statements: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Branches: <span class="metric">100% <small>(0 / 0)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">66.67% <small>(2 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">100% <small>(3 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Ignored: <span class="metric"><span class="ignore-none">none</span></span> &nbsp;&nbsp;&nbsp;&nbsp;
</h2>
@ -232,16 +232,16 @@
</tr>
</thead>
<tbody><tr>
<td class="file medium" data-value="js/"><a href="js/index.html">js/</a></td>
<td data-value="75" class="pic medium"><span class="cover-fill" style="width: 75px;"></span><span class="cover-empty" style="width:25px;"></span></td>
<td data-value="75" class="pct medium">75%</td>
<td data-value="4" class="abs medium">(3&nbsp;/&nbsp;4)</td>
<td class="file high" data-value="js/"><a href="js/index.html">js/</a></td>
<td data-value="100" class="pic high"><span class="cover-fill cover-full" style="width: 100px;"></span><span class="cover-empty" style="width:0px;"></span></td>
<td data-value="100" class="pct high">100%</td>
<td data-value="4" class="abs high">(4&nbsp;/&nbsp;4)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="0" class="abs high">(0&nbsp;/&nbsp;0)</td>
<td data-value="66.67" class="pct medium">66.67%</td>
<td data-value="3" class="abs medium">(2&nbsp;/&nbsp;3)</td>
<td data-value="75" class="pct medium">75%</td>
<td data-value="4" class="abs medium">(3&nbsp;/&nbsp;4)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="3" class="abs high">(3&nbsp;/&nbsp;3)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="4" class="abs high">(4&nbsp;/&nbsp;4)</td>
</tr>
</tbody>
@ -249,7 +249,7 @@
</div>
</div>
<div class="footer">
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 10:38:11 GMT-0400 (EDT)</div>
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 12:19:02 GMT-0400 (EDT)</div>
</div>
<script src="prettify.js"></script>

@ -195,20 +195,20 @@
</style>
</head>
<body>
<div class="header medium">
<div class="header high">
<h1>Code coverage report for <span class="entity">js/</span></h1>
<h2>
Statements: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Statements: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Branches: <span class="metric">100% <small>(0 / 0)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">66.67% <small>(2 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">100% <small>(3 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Ignored: <span class="metric"><span class="ignore-none">none</span></span> &nbsp;&nbsp;&nbsp;&nbsp;
</h2>
@ -232,16 +232,16 @@
</tr>
</thead>
<tbody><tr>
<td class="file medium" data-value="main.js"><a href="main.js.html">main.js</a></td>
<td data-value="75" class="pic medium"><span class="cover-fill" style="width: 75px;"></span><span class="cover-empty" style="width:25px;"></span></td>
<td data-value="75" class="pct medium">75%</td>
<td data-value="4" class="abs medium">(3&nbsp;/&nbsp;4)</td>
<td class="file high" data-value="main.js"><a href="main.js.html">main.js</a></td>
<td data-value="100" class="pic high"><span class="cover-fill cover-full" style="width: 100px;"></span><span class="cover-empty" style="width:0px;"></span></td>
<td data-value="100" class="pct high">100%</td>
<td data-value="4" class="abs high">(4&nbsp;/&nbsp;4)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="0" class="abs high">(0&nbsp;/&nbsp;0)</td>
<td data-value="66.67" class="pct medium">66.67%</td>
<td data-value="3" class="abs medium">(2&nbsp;/&nbsp;3)</td>
<td data-value="75" class="pct medium">75%</td>
<td data-value="4" class="abs medium">(3&nbsp;/&nbsp;4)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="3" class="abs high">(3&nbsp;/&nbsp;3)</td>
<td data-value="100" class="pct high">100%</td>
<td data-value="4" class="abs high">(4&nbsp;/&nbsp;4)</td>
</tr>
</tbody>
@ -249,7 +249,7 @@
</div>
</div>
<div class="footer">
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 10:38:11 GMT-0400 (EDT)</div>
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 12:19:02 GMT-0400 (EDT)</div>
</div>
<script src="../prettify.js"></script>

@ -195,20 +195,20 @@
</style>
</head>
<body>
<div class="header medium">
<div class="header high">
<h1>Code coverage report for <span class="entity">js/main.js</span></h1>
<h2>
Statements: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Statements: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Branches: <span class="metric">100% <small>(0 / 0)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">66.67% <small>(2 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Functions: <span class="metric">100% <small>(3 / 3)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">75% <small>(3 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Lines: <span class="metric">100% <small>(4 / 4)</small></span> &nbsp;&nbsp;&nbsp;&nbsp;
Ignored: <span class="metric"><span class="ignore-none">none</span></span> &nbsp;&nbsp;&nbsp;&nbsp;
</h2>
@ -227,15 +227,15 @@
9</td><td class="line-coverage"><span class="cline-any cline-yes">1</span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">(function () { (function($){
$(function(){
$('h1').click(<span class="fstat-no" title="function not covered" >function(){</span>
<span class="cstat-no" title="statement not covered" > $('body').append('&lt;div&gt;added through jquery&lt;/div&gt;');</span>
$('a').click(function(){
$('body').append('&lt;div id="jQueryAddedDiv"&gt;added through jquery&lt;/div&gt;');
})
});
})(jQuery);
@ -245,7 +245,7 @@
</div>
<div class="footer">
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 10:38:11 GMT-0400 (EDT)</div>
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Jun 24 2014 12:19:02 GMT-0400 (EDT)</div>
</div>
<script src="../prettify.js"></script>

@ -4,16 +4,16 @@ FN:1,(anonymous_1)
FN:2,(anonymous_2)
FN:3,(anonymous_3)
FNF:3
FNH:2
FNH:3
FNDA:1,(anonymous_1)
FNDA:1,(anonymous_2)
FNDA:0,(anonymous_3)
FNDA:1,(anonymous_3)
DA:1,1
DA:2,1
DA:3,1
DA:4,0
DA:4,1
LF:4
LH:3
LH:4
BRF:0
BRH:0
end_of_record

@ -1,16 +1,28 @@
var webdriver = require('selenium-webdriver');
var fs = require('fs');
jasmine.getEnv().addReporter(new jasmine.ConsoleReporter(console.log));
var driver = new webdriver.Builder().
withCapabilities(webdriver.Capabilities.chrome()).
build();
describe('basic test', function () {
it('should be on correct page', function (done) {
describe('Main page', function () {
it('should have title of Test Title', function (done) {
driver.get('http://localhost:9001/');
driver.getTitle().then(function(title) {
expect(title).toBe('Test Title');
});
done();
});
it('should show extra div when clicking on link', function (done) {
driver.findElement(webdriver.By.id('clicker')).click();
driver.findElement(webdriver.By.id('jQueryAddedDiv')).then(function(element){
element.getText().then(function(div_text){
expect(div_text).toBe('added through jquery');
done();
});
});
driver.switchTo().defaultContent();
driver.executeScript("return window.__coverage__;").then(function (obj) {
fs.writeFile('coverage/coverage.json', JSON.stringify(obj));

@ -4,6 +4,7 @@
</head>
<body>
<h1>On page load value</h1>
<a href="#" id="clicker">add div</a>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="js/main-instrumented.js"></script>
</body>

@ -3,7 +3,7 @@ var __cov_Hq55tQjQYx3tAA6SCTbFyg = (Function('return this'))();
if (!__cov_Hq55tQjQYx3tAA6SCTbFyg.__coverage__) { __cov_Hq55tQjQYx3tAA6SCTbFyg.__coverage__ = {}; }
__cov_Hq55tQjQYx3tAA6SCTbFyg = __cov_Hq55tQjQYx3tAA6SCTbFyg.__coverage__;
if (!(__cov_Hq55tQjQYx3tAA6SCTbFyg['/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js'])) {
__cov_Hq55tQjQYx3tAA6SCTbFyg['/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js'] = {"path":"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js","s":{"1":0,"2":0,"3":0,"4":0},"b":{},"f":{"1":0,"2":0,"3":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":1},"end":{"line":1,"column":12}}},"2":{"name":"(anonymous_2)","line":2,"loc":{"start":{"line":2,"column":3},"end":{"line":2,"column":13}}},"3":{"name":"(anonymous_3)","line":3,"loc":{"start":{"line":3,"column":16},"end":{"line":3,"column":26}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":7,"column":11}},"2":{"start":{"line":2,"column":1},"end":{"line":6,"column":4}},"3":{"start":{"line":3,"column":2},"end":{"line":6,"column":1}},"4":{"start":{"line":4,"column":3},"end":{"line":4,"column":55}}},"branchMap":{},"code":["(function () { (function($){","\t$(function(){","\t\t$('h1').click(function(){","\t\t\t$('body').append('<div>added through jquery</div>');","\t\t})","\t});","})(jQuery);","}());"]};
__cov_Hq55tQjQYx3tAA6SCTbFyg['/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js'] = {"path":"/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js","s":{"1":0,"2":0,"3":0,"4":0},"b":{},"f":{"1":0,"2":0,"3":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":1},"end":{"line":1,"column":12}}},"2":{"name":"(anonymous_2)","line":2,"loc":{"start":{"line":2,"column":3},"end":{"line":2,"column":13}}},"3":{"name":"(anonymous_3)","line":3,"loc":{"start":{"line":3,"column":15},"end":{"line":3,"column":25}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":7,"column":11}},"2":{"start":{"line":2,"column":1},"end":{"line":6,"column":4}},"3":{"start":{"line":3,"column":2},"end":{"line":6,"column":1}},"4":{"start":{"line":4,"column":3},"end":{"line":4,"column":75}}},"branchMap":{},"code":["(function () { (function($){","\t$(function(){","\t\t$('a').click(function(){","\t\t\t$('body').append('<div id=\"jQueryAddedDiv\">added through jquery</div>');","\t\t})","\t});","})(jQuery);","}());"]};
}
__cov_Hq55tQjQYx3tAA6SCTbFyg = __cov_Hq55tQjQYx3tAA6SCTbFyg['/Users/matt.huntington/Documents/Sites/e2e-with-coverage/src/js/main.js'];
__cov_Hq55tQjQYx3tAA6SCTbFyg.s['1']++;(function($){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['1']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['2']++;$(function(){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['2']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['3']++;$('h1').click(function(){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['3']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['4']++;$('body').append('<div>added through jquery</div>');});});}(jQuery));
__cov_Hq55tQjQYx3tAA6SCTbFyg.s['1']++;(function($){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['1']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['2']++;$(function(){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['2']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['3']++;$('a').click(function(){__cov_Hq55tQjQYx3tAA6SCTbFyg.f['3']++;__cov_Hq55tQjQYx3tAA6SCTbFyg.s['4']++;$('body').append('<div id="jQueryAddedDiv">added through jquery</div>');});});}(jQuery));

@ -1,7 +1,7 @@
(function($){
$(function(){
$('h1').click(function(){
$('body').append('<div>added through jquery</div>');
})
$('a').click(function(){
$('body').append('<div id="jQueryAddedDiv">added through jquery</div>');
});
});
})(jQuery);
Loading…
Cancel
Save