Permalink
Browse files

Code coverage: Switch from coveralls to codecov (#1533)

* Use codecov

* Update code coverage badge

* Fix upload command

* Try removing lcov and using json visualizer

* Try using libraries to generate the lcov file

* Update reports

* Fix up scripts

* Tweak coverage results

* Add definition for sudo-prompt

* Tweaks

* Hook up remap command

* Upload lcov

* Revert changes to Platform.ts

* Temporarily remove tests to get quicker feedback on coverage

* Temporarily remove packing step to get quicker feedback on ccov

* Fix script error

* Remove invalid coverage file

* Fix up codecov yaml

* Revert unnecessary changes

* Revert commented out code

* Some cleanup

* Bring back CiTests
  • Loading branch information...
bryphe committed Feb 12, 2018
1 parent 2336dc7 commit 3d755200735121f78d30cf2d01ce8983d7e0a20e
@@ -2,7 +2,7 @@

### Modern Modal Editing

[![Build Status](https://travis-ci.org/onivim/oni.svg?branch=master)](https://travis-ci.org/onivim/oni) [![Build Status](https://ci.appveyor.com/api/projects/status/gum9hty9hm65o7ae/branch/master?svg=true)](https://ci.appveyor.com/project/onivim/oni/branch/master)[![Coverage Status](https://img.shields.io/coveralls/onivim/oni/master.svg)](https://coveralls.io/github/onivim/oni?branch=master)
[![Build Status](https://travis-ci.org/onivim/oni.svg?branch=master)](https://travis-ci.org/onivim/oni) [![Build Status](https://ci.appveyor.com/api/projects/status/gum9hty9hm65o7ae/branch/master?svg=true)](https://ci.appveyor.com/project/onivim/oni/branch/master)[![codecov](https://codecov.io/gh/onivim/oni/branch/master/graph/badge.svg)](https://codecov.io/gh/onivim/oni)
[![Join the chat at https://gitter.im/onivim/Lobby](https://badges.gitter.im/onivim/Lobby.svg)](https://gitter.im/onivim/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Backers on Open Collective](https://opencollective.com/oni/backers/badge.svg)](https://opencollective.com/oni#backer) [![BountySource Active Bounties](https://api.bountysource.com/badge/tracker?tracker_id=48462304)](https://www.bountysource.com/teams/oni)
[![Total Downloads](https://img.shields.io/github/downloads/onivim/oni/total.svg)](https://github.com/onivim/oni/releases)

@@ -8,16 +8,22 @@ const fs = require("fs")
const path = require("path")
const mkdirp = require("mkdirp")

const istanbulAPI = require("istanbul-api")
const libCoverage = require("istanbul-lib-coverage")

function Coverage(runner) {
runner.on("end", () => {
const outputPath = path.join(__dirname, "..", ".nyc_output")

mkdirp.sync(outputPath)

const outputFile = path.join(outputPath, "out.json")
const mainReporter = istanbulAPI.createReporter()
const coverageMap = libCoverage.createCoverageMap()
console.log("Merging coverage map...")
coverageMap.merge(window.__coverage__ || {})
console.log("Merging coverage map complete")

console.log("Writing code coverage results to: " + outputFile)
fs.writeFileSync(outputFile, JSON.stringify(window.__coverage__))
console.log("Adding reporters...")
mainReporter.addAll(["text", "json", "html", "lcov"])
console.log("Writing code coverage map...")
mainReporter.write(coverageMap, {})
console.log("Complete!")
})
}

@@ -8,23 +8,19 @@
"lib": ["dom", "es2017"],
"module": "commonjs",
"moduleResolution": "node",
"newLine": "LF",
"noEmitOnError": true,
"noFallthroughCasesInSwitch": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"noUnusedLocals": true,
"outDir": "../lib_test/browser",
"pretty": true,
"removeComments": true,
"rootDir": ".",
"skipLibCheck": true,
"strictNullChecks": false,
"suppressImplicitAnyIndexErrors": true,
"target": "es2015",
"sourceMap": true
},
"include": ["src/**/*.ts", "test/**/*.ts"],
"include": ["src/**/*.ts", "src/**/*.tsx", "test/**/*.ts", "test/**/*.tsx"],
"exclude": ["node_modules"]
}
@@ -35,12 +35,9 @@ fi
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
npm run ccov:instrument
npm run ccov:test:browser
npm run ccov:report

ls -a .nyc_output
ls -a .nyc_output/coverage

node_modules/.bin/coveralls < .nyc_output/coverage/lcov.info
npm run ccov:remap:browser:lcov
npm run ccov:clean
npm run ccov:upload
fi

npm run copy-dist-to-s3
@@ -0,0 +1,3 @@
ignore:
- "dist/.*"

@@ -10,7 +10,9 @@
"test": "tsc -p tsconfig.test.json && mocha --recursive ./lib_test/test"
},
"oni": {
"supportedFileTypes": ["markdown"],
"supportedFileTypes": [
"markdown"
],
"commands": {
"markdown.preview": {
"name": "Markdown Preview",
@@ -167,9 +167,11 @@
"lint:test": "tslint --project test/tsconfig.json --config tslint.json && tslint vim/core/oni-plugin-typescript/src/**/*.ts && tslint extensions/oni-plugin-markdown-preview/src/**/*.ts",
"pack": "cross-env ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=1 build --publish never",
"ccov:instrument": "nyc instrument --all true --sourceMap false lib_test/browser/src lib_test/browser/src_ccov",
"ccov:test:browser": "cd browser && cross-env ONI_CCOV=1 electron-mocha --renderer --require testHelpers.js -R testCoverageReporter --recursive ../lib_test/browser/test",
"ccov:report": "nyc report && npm run ccov:report:lcov",
"ccov:report:lcov": "cd .nyc_output && nyc report --reporter=lcov out.json",
"ccov:test:browser": "cross-env ONI_CCOV=1 electron-mocha --renderer --require browser/testHelpers.js -R browser/testCoverageReporter --recursive lib_test/browser/test",
"ccov:remap:browser:html": "cd lib_test/browser/src && remap-istanbul --input ../../../coverage/coverage-final.json --output html-report --type html",
"ccov:remap:browser:lcov": "cd lib_test/browser/src && remap-istanbul --input ../../../coverage/coverage-final.json --output lcov.info --type lcovonly",
"ccov:clean": "rimraf coverage",
"ccov:upload": "codecov",
"start": "concurrently --kill-others \"npm run start-hot\" \"npm run watch:browser\" \"npm run watch:plugins\"",
"start-hot": "cross-env ONI_WEBPACK_LOAD=1 NODE_ENV=development electron lib/main/src/main.js",
"start-not-dev": "cross-env electron main.js",
@@ -243,9 +245,9 @@
"babili-webpack-plugin": "0.1.2",
"bs-platform": "1.8.0",
"classnames": "2.2.5",
"codecov": "^3.0.0",
"color": "2.0.0",
"concurrently": "3.1.0",
"coveralls": "^3.0.0",
"cross-env": "3.1.3",
"css-loader": "0.28.4",
"electron": "^1.8.2-beta.5",
@@ -260,6 +262,8 @@
"github-releases": "^0.4.1",
"husky": "^0.14.3",
"innosetup-compiler": "5.5.9",
"istanbul-api": "^1.2.1",
"istanbul-lib-coverage": "^1.1.1",
"jsdom": "11.0.0",
"less": "2.7.1",
"less-loader": "4.0.5",
@@ -284,6 +288,7 @@
"redux": "3.7.2",
"redux-observable": "0.17.0",
"redux-thunk": "2.2.0",
"remap-istanbul": "^0.10.1",
"reselect": "3.0.1",
"rxjs": "5.5.0",
"sinon": "1.17.6",
@@ -27,7 +27,6 @@ const CiTests = [
"Sidebar.ToggleSplitTest",
"WindowManager.ErrorBoundary",
"Workspace.ConfigurationTest",

// Regression Tests
"Regression.1251.NoAdditionalProcessesOnStartup",
"Regression.1296.SettingColorsTest",
Image
Oops, something went wrong.

0 comments on commit 3d75520

Please sign in to comment.