Skip to content

Commit 0766280

Browse files
reva2ghidoz
authored andcommitted
Collect test coverage metrics (#30)
1 parent 764631c commit 0766280

File tree

8 files changed

+80
-29
lines changed

8 files changed

+80
-29
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,5 @@ Desktop.ini
2424

2525
# But not these:
2626
!*.conf.js
27+
28+
/coverage

.npmignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,5 @@ Desktop.ini
2323
# Mac
2424
.DS_Store
2525
**/.DS_Store
26+
27+
/coverage

.travis.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
language: node_js
22
sudo: false
33
node_js:
4-
- '4.2.1'
4+
- '4'
5+
- '5'
6+
- '6'
7+
8+
after_success:
9+
- cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js

README.MD

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,12 @@
22

33
A lightweight Angular 2 adapter for [JSON API](http://jsonapi.org/)
44

5-
[![Angular 2 Style Guide](https://mgechev.github.io/angular2-style-guide/images/badge.svg)](https://angular.io/styleguide) [![Dependency Status](https://david-dm.org/ghidoz/angular2-jsonapi.svg)](https://david-dm.org/ghidoz/angular2-jsonapi) [![devDependency Status](https://david-dm.org/ghidoz/angular2-jsonapi/dev-status.svg)](https://david-dm.org/ghidoz/angular2-jsonapi#info=devDependencies) [![npm version](https://badge.fury.io/js/angular2-jsonapi.svg)](https://badge.fury.io/js/angular2-jsonapi)
5+
[![Build Status](https://travis-ci.org/ghidoz/angular2-jsonapi.svg?branch=master)](https://travis-ci.org/ghidoz/angular2-jsonapi)
6+
[![Coverage Status](https://coveralls.io/repos/github/ghidoz/angular2-jsonapi/badge.svg?branch=master)](https://coveralls.io/github/ghidoz/angular2-jsonapi?branch=master)
7+
[![Angular 2 Style Guide](https://mgechev.github.io/angular2-style-guide/images/badge.svg)](https://angular.io/styleguide)
8+
[![Dependency Status](https://david-dm.org/ghidoz/angular2-jsonapi.svg)](https://david-dm.org/ghidoz/angular2-jsonapi)
9+
[![devDependency Status](https://david-dm.org/ghidoz/angular2-jsonapi/dev-status.svg)](https://david-dm.org/ghidoz/angular2-jsonapi#info=devDependencies)
10+
[![npm version](https://badge.fury.io/js/angular2-jsonapi.svg)](https://badge.fury.io/js/angular2-jsonapi)
611

712
## Table of Contents
813
- [Introduction](#Introduction)

karma.conf.js

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
"use strict";
2+
3+
var webpackConfig = require('./webpack.test.conf');
4+
15
module.exports = function (config) {
26
var _config = {
37
basePath: '',
@@ -7,8 +11,10 @@ module.exports = function (config) {
711
require('karma-webpack'),
812
require('karma-sourcemap-loader'),
913
require('karma-jasmine'),
10-
require('karma-chrome-launcher'),
11-
require('karma-spec-reporter')
14+
require('karma-phantomjs-launcher'),
15+
require('karma-spec-reporter'),
16+
require('karma-remap-istanbul'),
17+
require('karma-coverage')
1218
],
1319

1420
files: [
@@ -19,36 +25,26 @@ module.exports = function (config) {
1925
'./karma-test-shim.conf.js': ['webpack', 'sourcemap']
2026
},
2127

22-
webpack: {
23-
resolve: {
24-
root: __dirname,
25-
extensions: ['', '.ts', '.js', '.json'],
26-
},
27-
devtool: 'inline-source-map',
28-
module: {
29-
loaders: [
30-
{
31-
test: /\.ts$/,
32-
loader: 'ts',
33-
exclude: [/node_modules/]
34-
}
35-
]
36-
},
37-
stats: { colors: true, reasons: true },
38-
debug: false
39-
},
28+
webpack: webpackConfig,
4029

4130
webpackServer: {
4231
noInfo: true
4332
},
4433

45-
reporters: ['spec'],
34+
remapIstanbulReporter: {
35+
reports: {
36+
lcovonly: './coverage/lcov.info',
37+
html: './coverage'
38+
}
39+
},
40+
41+
reporters: ['spec', 'karma-remap-istanbul'],
4642
port: 9876,
4743
colors: true,
4844
logLevel: config.LOG_INFO,
4945
autoWatch: true,
50-
browsers: ['Chrome'],
51-
singleRun: false
46+
browsers: ['PhantomJS'],
47+
singleRun: true
5248
};
5349

5450
config.set(_config);

package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
"@types/lodash": "^4.14.37",
4242
"@types/reflect-metadata": "0.0.4",
4343
"@types/selenium-webdriver": "^2.53.30",
44+
"core-js": "^2.4.1",
4445
"lodash": "^4.16.4",
4546
"reflect-metadata": "0.1.3",
4647
"rxjs": "5.0.0-beta.12",
@@ -49,17 +50,19 @@
4950
"devDependencies": {
5051
"@angular/platform-browser-dynamic": "2.0.0",
5152
"codelyzer": "^0.0.25",
52-
"rimraf": "^2.5.4",
53+
"coveralls": "^2.11.14",
5354
"jasmine-core": "2.4.1",
5455
"karma": "1.3.0",
55-
"karma-chrome-launcher": "^2.0.0",
56+
"karma-coverage": "^1.1.1",
5657
"karma-jasmine": "1.0.2",
57-
"karma-phantomjs-launcher": "1.0.2",
58+
"karma-phantomjs-launcher": "^1.0.2",
5859
"karma-remap-istanbul": "^0.2.1",
5960
"karma-sourcemap-loader": "0.3.7",
6061
"karma-spec-reporter": "0.0.26",
6162
"karma-webpack": "1.8.0",
6263
"phantomjs-prebuilt": "2.1.12",
64+
"rimraf": "^2.5.4",
65+
"sourcemap-istanbul-instrumenter-loader": "^0.2.0",
6366
"ts-loader": "^0.8.2",
6467
"tslint": "^3.13.0",
6568
"typescript": "2.0.2",

tsconfig.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,9 @@
2828
],
2929
"include": [
3030
"node_modules/@types"
31-
]
31+
],
32+
"awesomeTypescriptLoaderOptions": {
33+
"sourceMap": false,
34+
"inlineSourceMap": true
35+
}
3236
}

webpack.test.conf.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
'use strict';
2+
3+
module.exports = {
4+
resolve: {
5+
root: __dirname,
6+
extensions: ['', '.ts', '.js', '.json']
7+
},
8+
devtool: 'inline-source-map',
9+
module: {
10+
loaders: [
11+
{
12+
test: /\.ts$/,
13+
loader: 'ts',
14+
exclude: [/node_modules/]
15+
}
16+
],
17+
postLoaders: [
18+
{
19+
test: /\.(js|ts)$/,
20+
loader: 'sourcemap-istanbul-instrumenter-loader',
21+
exclude: [
22+
/node_modules/,
23+
/test/,
24+
/\.(e2e|spec)\.ts$/
25+
],
26+
query: {
27+
'force-sourcemap': true
28+
}
29+
}
30+
]
31+
},
32+
stats: { colors: true, reasons: true },
33+
debug: false
34+
};

0 commit comments

Comments
 (0)