Page MenuHomeWickedGov Phorge

karma.conf.js
No OneTemporary

Size
4 KB
Referenced Files
None
Subscribers
None

karma.conf.js

'use strict';
const fg = require( 'fast-glob' );
/**
* Build an object of required coverage percentages
*
* @param {number} pc Percentage coverage required (for all aspects)
* @return {Object} required coverage percentages
*/
function coverAll( pc ) {
return {
functions: pc,
branches: pc,
statements: pc,
lines: pc
};
}
module.exports = function ( config ) {
config.set( {
coverageReporter: {
dir: 'coverage/',
subdir: '.',
reporters: [
{ type: 'clover' },
{ type: 'html' },
{ type: 'json-summary' },
{ type: 'text-summary' }
],
check: {
global: coverAll( 73 ),
each: {
functions: 20,
branches: 20,
statements: 20,
lines: 20,
excludes: fg.globSync( [
'rebaser/src/dm/ve.dm.ProtocolServer.js',
'rebaser/src/dm/ve.dm.RebaseDocState.js',
'src/ve.track.js',
'src/init/**/*.js',
// DM
'!src/init/ve.init.ConflictableStorage.js',
'!src/init/ve.init.SupportCheck.js',
'!src/init/ve.init.js',
'!src/init/sa/ve.init.sa.js',
'src/dm/ve.dm.Converter.js',
'src/dm/ve.dm.InternalListNodeGroup.js',
'src/dm/ve.dm.SourceSurfaceFragment.js',
'src/dm/ve.dm.SurfaceSynchronizer.js',
'src/dm/ve.dm.TableSlice.js',
'src/dm/annotations/ve.dm.CommentAnnotation.js',
// TODO: Fix AlienMetaItem for 100% coverage
'src/dm/metaitems/ve.dm.AlienMetaItem.js',
'src/dm/nodes/ve.dm.DocumentNode.js',
'src/dm/nodes/ve.dm.GeneratedContentNode.js',
'src/dm/nodes/ve.dm.ImageNode.js',
'src/dm/nodes/ve.dm.SectionNode.js',
// CE
'src/ce/ve.ce.DragDropHandler.js',
'src/ce/ve.ce.SelectionManager.js',
'src/ce/ve.ce.SurfaceSynchronizer.js',
'src/ce/nodes/ve.ce.CheckListItemNode.js',
'src/ce/nodes/ve.ce.GeneratedContentNode.js',
'src/ce/nodes/ve.ce.InternalItemNode.js',
'src/ce/keydownhandlers/ve.ce.TableDeleteKeyDownHandler.js',
// UI
'src/ui/*.js',
'!src/ui/ve.ui.Action.js',
'!src/ui/ve.ui.DataTransferHandlerFactory.js',
'!src/ui/ve.ui.DataTransferItem.js',
'!src/ui/ve.ui.FragmentWindow.js',
'!src/ui/ve.ui.Overlay.js',
'!src/ui/ve.ui.SequenceRegistry.js',
'!src/ui/ve.ui.ToolFactory.js',
'!src/ui/ve.ui.Trigger.js',
'!src/ui/ve.ui.TriggerRegistry.js',
'!src/ui/ve.ui.js',
'src/ui/actions/*.js',
'!src/ui/actions/ve.ui.AnnotationAction.js',
'!src/ui/actions/ve.ui.FormatAction.js',
'!src/ui/actions/ve.ui.IndentationAction.js',
'!src/ui/actions/ve.ui.LinkAction.js',
'!src/ui/actions/ve.ui.TableAction.js',
'src/ui/commands/*.js',
'src/ui/contextitems/*.js',
'!src/ui/contextitems/ve.ui.CommentContextItem.js',
'!src/ui/contextitems/ve.ui.LanguageContextItem.js',
'src/ui/contexts/*.js',
'src/ui/datatransferhandlers/*.js',
'!src/ui/datatransferhandlers/ve.ui.DSVFileTransferHandler.js',
'!src/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.js',
'src/ui/dialogs/*.js',
'src/ui/inspectors/ve.ui.CommentAnnotationInspector.js',
'src/ui/inspectors/ve.ui.FragmentInspector.js',
'src/ui/layouts/*.js',
'src/ui/pages/*.js',
'src/ui/tools/*.js',
'src/ui/widgets/*.js',
'!src/ui/widgets/ve.ui.NoFocusButtonWidget.js',
'src/ui/windowmanagers/*.js'
] ),
overrides: {
// Core
// TODO: Fix a few cases for 80% coverage
'src/*.js': coverAll( 50 ),
// DM
'src/dm/*.js': coverAll( 75 ),
'src/dm/annotations/*.js': coverAll( 100 ),
'src/dm/lineardata/*.js': coverAll( 95 ),
'src/dm/metaitems/*.js': coverAll( 100 ),
// TODO: Fix a few cases for 80% coverage
'src/dm/nodes/*.js': coverAll( 70 ),
// TODO: Fix a few cases for 95% coverage
'src/dm/selections/*.js': coverAll( 80 ),
// CE
'src/ce/*.js': coverAll( 50 ),
// TODO: Fix a few cases for 80% coverage
'src/ce/annotations/*.js': coverAll( 50 ),
'src/ce/keydownhandlers/*.js': coverAll( 80 ),
'src/ce/nodes/*.js': coverAll( 50 ),
'src/ce/selections/*.js': coverAll( 80 ),
// UI
'src/ui/elements/*.js': coverAll( 50 ),
'src/ui/inspectors/*.js': coverAll( 50 )
}
}
}
}
} );
};

File Metadata

Mime Type
text/plain
Expires
Tue, Aug 18, 16:12 (3 w, 5 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
92/9c/27fd691376e9235ebbf5a74bfad5
Default Alt Text
karma.conf.js (4 KB)

Event Timeline