| 669 | }); |
| 670 | |
| 671 | function done() { |
| 672 | config.autorun = true; |
| 673 | |
| 674 | // Log the last module results |
| 675 | if ( config.currentModule ) { |
| 676 | QUnit.moduleDone( config.currentModule, config.moduleStats.bad, config.moduleStats.all ); |
| 677 | } |
| 678 | |
| 679 | var banner = id("qunit-banner"), |
| 680 | tests = id("qunit-tests"), |
| 681 | html = ['Tests completed in ', |
| 682 | +new Date - config.started, ' milliseconds.<br/>', |
| 683 | '<span class="passed">', config.stats.all - config.stats.bad, '</span> tests of <span class="total">', config.stats.all, '</span> passed, <span class="failed">', config.stats.bad,'</span> failed.'].join(''); |
| 684 | |
| 685 | if ( banner ) { |
| 686 | banner.className = (config.stats.bad ? "qunit-fail" : "qunit-pass"); |
| 687 | } |
| 688 | |
| 689 | if ( tests ) { |
| 690 | var result = id("qunit-testresult"); |
| 691 | |
| 692 | if ( !result ) { |
| 693 | result = document.createElement("p"); |
| 694 | result.id = "qunit-testresult"; |
| 695 | result.className = "result"; |
| 696 | tests.parentNode.insertBefore( result, tests.nextSibling ); |
| 697 | } |
| 698 | |
| 699 | result.innerHTML = html; |
| 700 | } |
| 701 | |
| 702 | QUnit.done( config.stats.bad, config.stats.all ); |
| 703 | } |
| 704 | |
| 705 | function validTest( name ) { |
| 706 | var i = config.filters.length, |