commonform-prepare-blanks

1.0.2 • Public • Published

commonform-prepare-blanks

combine values and directions to fill Common Form blanks

var prepareBlanks = require('commonform-prepare-blanks')
var assert = require('assert')
 
assert.deepStrictEqual(
  prepareBlanks(
    [ { value: '$10', blank: [ 'content', 1 ] } ]
  ),
  [ { value: '$10', blank: [ 'content', 1 ] } ]
)
 
assert.deepStrictEqual(
  prepareBlanks(
    { price: '$10' },
    [ { label: 'price', blank: [ 'content', 1 ] } ]
  ),
  [ { value: '$10', blank: [ 'content', 1 ] } ]
)
 
assert.deepStrictEqual(
  prepareBlanks(
    { price: '$10' },
    [
      { label: 'price', blank: [ 'content', 1 ] },
      { label: 'deadline', blank: [ 'content', 4 ] }
    ]
  ),
  [ { value: '$10', blank: [ 'content', 1 ] } ]
)
 
assert.throws(function () {
  prepareBlanks('invalid')
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks([ 'invalid' ])
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks([ false ])
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks(
    [ { invalid: '$10', blank: [ 'content', 1 ] } ]
  )
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks(
    [ { value: '$10', blank: [ 'invalid', 1 ] } ]
  )
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks(
    [ { value: '$10', blank: [ 'content', 1, 'invalid' ] } ]
  )
}, /invalid values/)
 
assert.throws(function () {
  prepareBlanks(
    { price: '$10' }
  )
}, /missing directions/)
 
assert.throws(function () {
  prepareBlanks(
    { price: '$10' },
    [ { invalid: 'direction' } ]
  )
}, /invalid directions/)

Dependencies (0)

    Dev Dependencies (5)

    Package Sidebar

    Install

    npm i commonform-prepare-blanks

    Weekly Downloads

    7

    Version

    1.0.2

    License

    BlueOak-1.0.0

    Unpacked Size

    5.75 kB

    Total Files

    4

    Last publish

    Collaborators

    • kemitchell