forked from sheetjs/sheetjs
		
	
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* vim: set ts=2: */
 | |
| /*jshint loopfunc:true, mocha:true, node:true */
 | |
| /*eslint-env mocha, node */
 | |
| var SSF = require('../');
 | |
| var assert = require('assert');
 | |
| 
 | |
| /* {format, data:[[value, result]]} */
 | |
| var data = [
 | |
| 	{
 | |
| 		format: '"$"#,##0_);\\("$"#,##0\\);"-"',
 | |
| 		data: [
 | |
| 			[10000,    "$10,000 "],
 | |
| 			[9000.98,   "$9,001 "],
 | |
| 			[100,         "$100 "],
 | |
| 			[50.02,        "$50 "],
 | |
| 			[1,             "$1 "],
 | |
| 			[0.1,           "$0 "],
 | |
| 			[0.01,          "$0 "],
 | |
| 			[0,               "-"],
 | |
| 			[-10000,  "($10,000)"],
 | |
| 			[-9000.98, "($9,001)"],
 | |
| 			[-100,       "($100)"],
 | |
| 			[-50.02,      "($50)"],
 | |
| 			[-1,           "($1)"],
 | |
| 			[-0.1,         "($0)"],
 | |
| 			[-0.01,        "($0)"]
 | |
| 		]
 | |
| 	},
 | |
| 	{
 | |
| 		format: '(#,##0.00)',
 | |
| 		data: [
 | |
| 			[-12345.6789, "-(12,345.68)"]
 | |
| 		]
 | |
| 	},
 | |
| 	{
 | |
| 		format: '#,##0.00;\\(#,##0.00\\)',
 | |
| 		data: [
 | |
| 			[-12345.6789, "(12,345.68)"]
 | |
| 		]
 | |
| 	},
 | |
| 	{
 | |
| 		format: '[<=9999999]###\\-####;(###) ###\\-####',
 | |
| 		data: [
 | |
| 			[2813308004, '(281) 330-8004']
 | |
| 		]
 | |
| 	}
 | |
| ];
 | |
| 
 | |
| describe("negatives", function() {
 | |
| 	data.forEach(function(row) {
 | |
| 		it(row.format, function() {
 | |
| 			row.data.forEach(function(r) {
 | |
| 				assert.equal(SSF.format(row.format, r[0]), r[1]);
 | |
| 			});
 | |
| 		});
 | |
| 	});
 | |
| });
 |