All files / node_modules/js-yaml/lib/js-yaml/type null.js

80% Statements 4/5
100% Branches 6/6
0% Functions 0/3
80% Lines 4/5
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 351x   1x         836x                           1x                          
'use strict';
 
var Type = require('../type');
 
function resolveYamlNull(data) {
  if (data === null) return true;
 
  var max = data.length;
 
  return (max === 1 && data === '~') ||
         (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
}
 
function constructYamlNull() {
  return null;
}
 
function isNull(object) {
  return object === null;
}
 
module.exports = new Type('tag:yaml.org,2002:null', {
  kind: 'scalar',
  resolve: resolveYamlNull,
  construct: constructYamlNull,
  predicate: isNull,
  represent: {
    canonical: function () { return '~';    },
    lowercase: function () { return 'null'; },
    uppercase: function () { return 'NULL'; },
    camelcase: function () { return 'Null'; }
  },
  defaultStyle: 'lowercase'
});