mlpm
Version:
the client for mlpm, a MarkLogic package manager
256 lines (254 loc) • 9.7 kB
HTML
<html lang="en">
<head>
<title>Code coverage report for lib/commands/publish.js</title>
<meta charset="utf-8">
<link rel="stylesheet" href="../../prettify.css">
<link rel="stylesheet" href="../../base.css">
<style type='text/css'>
div.coverage-summary .sorter {
background-image: url(../../sort-arrow-sprite.png);
}
</style>
</head>
<body>
<div class="header low">
<h1>Code coverage report for <span class="entity">lib/commands/publish.js</span></h1>
<h2>
Statements: <span class="metric">36.96% <small>(17 / 46)</small></span>
Branches: <span class="metric">9.09% <small>(2 / 22)</small></span>
Functions: <span class="metric">27.27% <small>(3 / 11)</small></span>
Lines: <span class="metric">40.54% <small>(15 / 37)</small></span>
Ignored: <span class="metric"><span class="ignore-none">none</span></span>
</h2>
<div class="path"><a href="../../index.html">All files</a> » <a href="index.html">lib/commands/</a> » publish.js</div>
</div>
<div class="body">
<pre><table class="coverage">
<tr><td class="line-count">1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71</td><td class="line-coverage"><span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<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-yes">1</span>
<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-neutral"> </span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<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-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-no"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-neutral"> </span>
<span class="cline-any cline-yes">1</span>
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">'use strict'
var log = require('winston')
var fs = require('fs')
var _ = require('lodash')
var hash = require('hash.js')
var util = require('../util.js')
var api = require('../api.js')
var project = require('../project.js')
<span class="fstat-no" title="function not covered" >function publishPackage(mlpm, auth, localExport) {</span>
<span class="cstat-no" title="statement not covered" > project.createZip(mlpm, <span class="fstat-no" title="function not covered" >function(err, zip) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
<span class="cstat-no" title="statement not covered" > var buffer = zip.generate({type: 'nodebuffer'})</span>
// TODO: process.nextTick()?
<span class="cstat-no" title="statement not covered" > mlpm.sha2sum = hash.sha256().update( buffer ).digest('hex')</span>
<span class="cstat-no" title="statement not covered" > if ( localExport ) {</span>
<span class="cstat-no" title="statement not covered" > return fs.writeFile( mlpm.name + '-' + mlpm.version + '.zip', buffer, <span class="fstat-no" title="function not covered" >function(err) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
})
}
<span class="cstat-no" title="statement not covered" > api.publish(mlpm, buffer, auth, <span class="fstat-no" title="function not covered" >function(err, body) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
<span class="cstat-no" title="statement not covered" > console.log( 'published ' + mlpm.name + '@' + mlpm.version )</span>
})
})
}
function dryRun() {
project.getConfig(function (err, pkgConfig) {
<span class="missing-if-branch" title="else path not taken" >E</span>if (err) return console.log(err)
<span class="cstat-no" title="statement not covered" > log.info( pkgConfig.name + '@' + pkgConfig.version )</span>
<span class="cstat-no" title="statement not covered" > project.getFiles(pkgConfig, false, <span class="fstat-no" title="function not covered" >function(err, files) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
<span class="cstat-no" title="statement not covered" > var cwd = process.cwd()</span>
<span class="cstat-no" title="statement not covered" > _.each(files, <span class="fstat-no" title="function not covered" >function(file) {</span></span>
<span class="cstat-no" title="statement not covered" > log.info( file.path.replace(cwd, '') )</span>
})
})
})
}
function publish(args) {
<span class="missing-if-branch" title="else path not taken" >E</span>if ( args.dryrun ) return dryRun()
<span class="cstat-no" title="statement not covered" > util.getAuth(args.admin, <span class="fstat-no" title="function not covered" >function(err, auth) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
<span class="cstat-no" title="statement not covered" > project.getConfig(<span class="fstat-no" title="function not covered" >function(err, mlpm) {</span></span>
<span class="cstat-no" title="statement not covered" > if (err) <span class="cstat-no" title="statement not covered" >return console.log(err)</span></span>
<span class="cstat-no" title="statement not covered" > if ( mlpm.private && !args.export ) <span class="cstat-no" title="statement not covered" >return console.log('private; can\'t publish')</span></span>
<span class="cstat-no" title="statement not covered" > publishPackage( mlpm, auth, args.export )</span>
})
})
}
publish.usage = 'mlpm publish [--dry-run]'
module.exports = publish
</pre></td></tr>
</table></pre>
</div>
<div class="footer">
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Fri Oct 02 2015 13:24:08 GMT-0400 (EDT)</div>
</div>
<script src="../../prettify.js"></script>
<script>
window.onload = function () {
if (typeof prettyPrint === 'function') {
prettyPrint();
}
};
</script>
<script src="../../sorter.js"></script>
</body>
</html>