lamassu-server/test/unit/migrate-options.js
2018-11-28 22:24:48 +02:00

64 lines
1.3 KiB
JavaScript

import test from 'ava'
import _ from 'lodash/fp'
import path from 'path'
import {mapKeyValuesDeep, updateOptionBasepath} from '../../lib/migrate-options'
const currentBasePath = path.dirname(path.dirname(__dirname))
test('mapKeyValuesDeep', t => {
const test = {
a: {
b: 1
},
c: [
{
d: 2,
e: 3
}
],
f: {
g: {
h: [
{
i: 4
}
]
}
}
}
const expected = [{b: 1}, {d: 2}, {e: 3}, {i: 4}]
const result = []
mapKeyValuesDeep((v, k) => {
result.push(_.fromPairs([[k, v]]))
}, test)
t.deepEqual(result, expected)
})
test('updateOptionBasepath', t => {
const test = {
someBooleanOption: true,
someStringOption: 'my-custom-option',
customExternalPath: '/usr/lib/node_modules/ava',
seedPath: '/etc/lamassu/seeds/seed.txt',
caPath: '/usr/lib/node_modules/lamassu-server/certs/Lamassu_OP_Root_CA.pem'
}
const expected = {
someBooleanOption: true,
someStringOption: 'my-custom-option',
customExternalPath: '/usr/lib/node_modules/ava',
seedPath: '/etc/lamassu/seeds/seed.txt',
caPath: path.join(currentBasePath, 'certs/Lamassu_OP_Root_CA.pem')
}
let result = _.clone(test)
_.each(
_.wrap(updateOptionBasepath, result),
_.keys(test)
)
t.deepEqual(result, expected)
})