UNPKG

cordova-plugin-mfp

Version:

IBM MobileFirst Platform Foundation Cordova Plugin

134 lines (118 loc) 4.14 kB
var assert = require('assert'); var build = require('../').build; var multiline = require('multiline'); describe('plist', function () { describe('build()', function () { it('should create a plist XML string from a String', function () { var xml = build('test'); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <string>test</string> </plist> */})); }); it('should create a plist XML integer from a whole Number', function () { var xml = build(3); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <integer>3</integer> </plist> */})); }); it('should create a plist XML real from a fractional Number', function () { var xml = build(Math.PI); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <real>3.141592653589793</real> </plist> */})); }); it('should create a plist XML date from a Date', function () { var xml = build(new Date('2010-02-08T21:41:23Z')); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <date>2010-02-08T21:41:23Z</date> </plist> */})); }); it('should create a plist XML date from a Buffer', function () { var xml = build(new Buffer('☃')); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <data>4piD</data> </plist> */})); }); it('should create a plist XML true from a `true` Boolean', function () { var xml = build(true); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <true/> </plist> */})); }); it('should create a plist XML false from a `false` Boolean', function () { var xml = build(false); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <false/> </plist> */})); }); it('should create a plist XML dict from an Object', function () { var xml = build({ foo: 'bar' }); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>foo</key> <string>bar</string> </dict> </plist> */})); }); it('should create a plist XML array from an Array', function () { var xml = build([ 1, 'foo', false, new Date(1234) ]); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <integer>1</integer> <string>foo</string> <false/> <date>1970-01-01T00:00:01Z</date> </array> </plist> */})); }); it('should properly encode an empty string', function () { var xml = build({ a: '' }); assert.strictEqual(xml, multiline(function () {/* <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>a</key> <string></string> </dict> </plist> */})); }); }); });