diff --git a/lib/nodejs/test/header.test.js b/lib/nodejs/test/header.test.js
index efd7f81..99bb832 100644
--- a/lib/nodejs/test/header.test.js
+++ b/lib/nodejs/test/header.test.js
@@ -39,6 +39,19 @@
     assert.equals(headers.Trace, "abcde");
     assert.end();
   },
+  "Should read different headers from different payload": function(assert) {
+    const transport = new TFramedTransport();
+    const buf = Buffer.from(headerPayload);
+    buf[24] = 115; // Change Parent to Parens
+    buf[32] = 122; // Change shoobar to shoobaz
+    transport.inBuf = buf;
+
+    const headers = transport.readHeaders();
+    assert.equals(headers.Parent, undefined);
+    assert.equals(headers.Parens, "shoobaz");
+    assert.equals(headers.Trace, "abcde");
+    assert.end();
+  },
   "Should read headers when reading message begin": function(assert) {
     const transport = new TFramedTransport();
     transport.inBuf = Buffer.from(headerPayload);
@@ -70,6 +83,23 @@
     assert.equals(headers.boobooboo, "fooshoopoo");
     assert.equals(headers.a, "z");
     assert.end();
+  },
+  "Separate transports should have separate headers": function(assert) {
+    const writeTransport = new TFramedTransport();
+    writeTransport.setProtocolId(THeaderTransport.SubprotocolId.BINARY);
+    writeTransport.setWriteHeader("foo", "bar");
+    const headers = writeTransport.getWriteHeaders();
+
+    const otherWriteTransport = new TFramedTransport();
+    otherWriteTransport.setProtocolId(THeaderTransport.SubprotocolId.BINARY);
+    otherWriteTransport.setWriteHeader("otherfoo", "baz");
+    const otherHeaders = otherWriteTransport.getWriteHeaders();
+
+    assert.equals(headers.foo, "bar");
+    assert.equals(headers.otherfoo, undefined);
+    assert.equals(otherHeaders.foo, undefined);
+    assert.equals(otherHeaders.otherfoo, "baz");
+    assert.end();
   }
 };
 
