Completed
Push — master ( e1c372...195545 )
by thomas
02:37 queued 01:05
created

lib/config.js   A

Complexity

Total Complexity 5
Complexity/F 1.25

Size

Lines of Code 23
Function Count 4

Duplication

Duplicated Lines 0
Ratio 0 %

Test Coverage

Coverage 88.89%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 0
wmc 5
c 1
b 0
f 0
nc 1
mnd 1
bc 5
fnc 4
dl 0
loc 23
ccs 8
cts 9
cp 0.8889
crap 0
rs 10
bpm 1.25
cpm 1.25
noi 0

2 Functions

Rating   Name   Duplication   Size   Complexity  
A NetworkConfig.Bitcoin 0 7 1
A NetworkConfig.getMimeTypes 0 3 1
1
2
function NetworkConfig(mimeTypes) {
3 2
    if (!['PAYMENT_REQUEST', 'PAYMENT', 'PAYMENT_ACK'].every(function(key) {
4 3
        return key in mimeTypes;
5
    })) {
6
        throw new Error("Missing MIME types");
7
    }
8
9 1
    this.mimeTypes = mimeTypes;
10
}
11
12 1
NetworkConfig.prototype.getMimeTypes = function() {
13 1
    return this.mimeTypes;
14
};
15
16 1
NetworkConfig.Bitcoin = function() {
17 1
    return new NetworkConfig({
18
        PAYMENT_REQUEST: "application/bitcoin-paymentrequest",
19
        PAYMENT: "application/bitcoin-payment",
20
        PAYMENT_ACK: "application/bitcoin-paymentack"
21
    });
22
};
23
24
module.exports = NetworkConfig;
25