summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js
diff options
context:
space:
mode:
authorMyles Borins <myles.borins@gmail.com>2017-10-26 22:35:25 -0400
committerMyles Borins <myles.borins@gmail.com>2017-10-29 21:32:15 -0400
commitace4fe566fc3af4876c7458f983feeb5eae3df26 (patch)
tree458d847e9bd56199cd0d8b34cec126c7410fb6ca /deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js
parent64168eb9b43e30e4c0b986c9b29c41be63e85df6 (diff)
downloadandroid-node-v8-ace4fe566fc3af4876c7458f983feeb5eae3df26.tar.gz
android-node-v8-ace4fe566fc3af4876c7458f983feeb5eae3df26.tar.bz2
android-node-v8-ace4fe566fc3af4876c7458f983feeb5eae3df26.zip
deps: update npm to 5.5.1
Closes: https://github.com/nodejs/node/pull/16280 PR-URL: https://github.com/nodejs/node/pull/16509 Fixes: https://github.com/nodejs/node/issues/14161 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com>
Diffstat (limited to 'deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js')
-rw-r--r--deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js158
1 files changed, 158 insertions, 0 deletions
diff --git a/deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js b/deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js
new file mode 100644
index 0000000000..5cd4703477
--- /dev/null
+++ b/deps/npm/node_modules/cli-table2/test/verify-legacy-compatibility-test.js
@@ -0,0 +1,158 @@
+(function(){
+ describe('verify original cli-table behavior',function(){
+ commonTests(require('cli-table'));
+ });
+
+ describe('@api cli-table2 matches verified behavior',function(){
+ commonTests(require('../src/table'));
+ });
+
+ function commonTests(Table){
+ var chai = require('chai');
+ var expect = chai.expect;
+ var colors = require('colors/safe');
+
+ it('empty table has a width of 0',function(){
+ var table = new Table();
+ expect(table.width).to.equal(0);
+ expect(table.toString()).to.equal('');
+ });
+
+ it('header text will be colored according to style',function(){
+ var table = new Table({head:['hello','goodbye'],style:{border:[],head:['red','bgWhite']}});
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│' + colors.bgWhite.red(' hello ') +'│' + colors.bgWhite.red(' goodbye ') + '│'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('tables with one row of data will not be treated as headers',function(){
+ var table = new Table({style:{border:[],head:['red']}});
+
+ table.push(['hello','goodbye']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│ hello │ goodbye │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('table with headers and data headers',function(){
+ var table = new Table({head:['hello','goodbye'],style:{border:[],head:['red']}});
+
+ table.push(['hola','adios']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│' + colors.red(' hello ') +'│' + colors.red(' goodbye ') + '│'
+ , '├───────┼─────────┤'
+ , '│ hola │ adios │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('compact shorthand',function(){
+ var table = new Table({style:{compact:true,border:[],head:['red']}});
+
+ table.push(['hello','goodbye'],['hola','adios']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│ hello │ goodbye │'
+ , '│ hola │ adios │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('compact shorthand - headers are still rendered with separator',function(){
+ var table = new Table({head:['hello','goodbye'],style:{compact:true,border:[],head:[]}});
+
+ table.push(['hola','adios'],['hi','bye']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│ hello │ goodbye │'
+ , '├───────┼─────────┤'
+ , '│ hola │ adios │'
+ , '│ hi │ bye │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('compact longhand - headers are not rendered with separator',function(){
+ var table = new Table({
+ chars: {
+ 'mid': ''
+ , 'left-mid': ''
+ , 'mid-mid': ''
+ , 'right-mid': ''
+ },
+ head:['hello','goodbye'],
+ style:{border:[],head:[]}}
+ );
+
+ table.push(['hola','adios'],['hi','bye']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│ hello │ goodbye │'
+ , '│ hola │ adios │'
+ , '│ hi │ bye │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('compact longhand',function(){
+ var table = new Table({
+ chars: {
+ 'mid': ''
+ , 'left-mid': ''
+ , 'mid-mid': ''
+ , 'right-mid': ''
+ },
+ style:{border:[],head:['red']}
+ });
+
+ table.push(['hello','goodbye'],['hola','adios']);
+
+ var expected = [
+ '┌───────┬─────────┐'
+ , '│ hello │ goodbye │'
+ , '│ hola │ adios │'
+ , '└───────┴─────────┘'
+ ];
+
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+
+ it('objects with multiple properties in a cross-table',function(){
+ var table = new Table({style:{border:[],head:[]}});
+
+ table.push(
+ {'a':['b'], c:['d']} // value of property 'c' will be discarded
+ );
+
+ var expected = [
+ '┌───┬───┐'
+ , '│ a │ b │'
+ , '└───┴───┘'
+ ];
+ expect(table.toString()).to.equal(expected.join('\n'));
+ });
+ }
+})(); \ No newline at end of file