summaryrefslogtreecommitdiff
path: root/test/parallel/test-net-isipv4.js
diff options
context:
space:
mode:
authorWeijia Wang <381152119@qq.com>2018-09-03 20:28:31 +0800
committerWeijia Wang <381152119@qq.com>2018-09-11 16:58:16 +0800
commit8e73594a5c82de26ebc0b1daedb20b6d3053dd4b (patch)
tree22de63e750d65674da7fb2fcb9be12a71216c86e /test/parallel/test-net-isipv4.js
parent121439a8ff0cd5e41517b3032890d5dab90ea44b (diff)
downloadandroid-node-v8-8e73594a5c82de26ebc0b1daedb20b6d3053dd4b.tar.gz
android-node-v8-8e73594a5c82de26ebc0b1daedb20b6d3053dd4b.tar.bz2
android-node-v8-8e73594a5c82de26ebc0b1daedb20b6d3053dd4b.zip
net: port isIPv6 to JS
Porting isIPv6() to JS makes it 10%-250% faster in most cases and reduces some C++ code. This change also adds tests for some edge cases. PR-URL: https://github.com/nodejs/node/pull/22673 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Roman Reiss <me@silverwind.io>
Diffstat (limited to 'test/parallel/test-net-isipv4.js')
-rw-r--r--test/parallel/test-net-isipv4.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/test/parallel/test-net-isipv4.js b/test/parallel/test-net-isipv4.js
new file mode 100644
index 0000000000..ec04505ced
--- /dev/null
+++ b/test/parallel/test-net-isipv4.js
@@ -0,0 +1,46 @@
+'use strict';
+require('../common');
+const assert = require('assert');
+const net = require('net');
+
+const v4 = [
+ '0.0.0.0',
+ '8.8.8.8',
+ '127.0.0.1',
+ '100.100.100.100',
+ '192.168.0.1',
+ '18.101.25.153',
+ '123.23.34.2',
+ '172.26.168.134',
+ '212.58.241.131',
+ '128.0.0.0',
+ '23.71.254.72',
+ '223.255.255.255',
+ '192.0.2.235',
+ '99.198.122.146',
+ '46.51.197.88',
+ '173.194.34.134'
+];
+
+const v4not = [
+ '.100.100.100.100',
+ '100..100.100.100.',
+ '100.100.100.100.',
+ '999.999.999.999',
+ '256.256.256.256',
+ '256.100.100.100.100',
+ '123.123.123',
+ 'http://123.123.123',
+ '1000.2.3.4',
+ '999.2.3.4',
+ '0000000192.168.0.200',
+ '192.168.0.2000000000'
+];
+
+v4.forEach((ip) => {
+ assert.strictEqual(net.isIPv4(ip), true);
+});
+
+v4not.forEach((ip) => {
+ assert.strictEqual(net.isIPv4(ip), false);
+});