We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 5de1771 commit f6f69aaCopy full SHA for f6f69aa
test/parallel/test-buffer-writedouble.js
@@ -67,10 +67,19 @@ assert.strictEqual(buffer.readDoubleLE(8), -Infinity);
67
buffer.writeDoubleBE(NaN, 0);
68
buffer.writeDoubleLE(NaN, 8);
69
70
-assert.ok(buffer.equals(new Uint8Array([
71
- 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
72
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x7F
73
-])));
+// JS only knows a single NaN but there exist two platform specific
+// implementations. Therefore, allow both quiet and signalling NaNs.
+if (buffer[1] === 0xF7) {
+ assert.ok(buffer.equals(new Uint8Array([
74
+ 0x7F, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
75
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0x7F
76
+ ])));
77
+} else {
78
79
+ 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
80
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x7F
81
82
+}
83
84
assert.ok(Number.isNaN(buffer.readDoubleBE(0)));
85
assert.ok(Number.isNaN(buffer.readDoubleLE(8)));
test/parallel/test-buffer-writefloat.js
@@ -50,8 +50,18 @@ assert.strictEqual(buffer.readFloatLE(4), -Infinity);
50
51
buffer.writeFloatBE(NaN, 0);
52
buffer.writeFloatLE(NaN, 4);
53
-assert.ok(buffer.equals(
54
- new Uint8Array([ 0x7F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F ])));
+
55
56
+if (buffer[1] === 0xBF) {
57
+ assert.ok(
58
+ buffer.equals(new Uint8Array(
59
+ [ 0x7F, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x7F ])));
60
61
62
63
+ [ 0x7F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F ])));
64
65
66
assert.ok(Number.isNaN(buffer.readFloatBE(0)));
assert.ok(Number.isNaN(buffer.readFloatLE(4)));
0 commit comments