Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
test('XVIZJSONReader#default-ctor', t => {
/* eslint-disable no-unused-vars */
// Ensure no parameter ctor
const source = new MemorySourceSink();
const binBuilder = new XVIZJSONReader(source);
t.end();
/* eslint-enable no-unused-vars */
});
test('XVIZBinaryReader#default-ctor', t => {
/* eslint-disable no-unused-vars */
// Ensure no parameter ctor
const source = new MemorySourceSink();
const binBuilder = new XVIZBinaryReader(source);
t.end();
/* eslint-enable no-unused-vars */
});
].forEach(frame => {
// Test that each "points" field is properly replaced.
const sink = new MemorySourceSink();
const writer = new XVIZBinaryWriter(sink);
writer.writeMessage(0, frame);
t.ok(sink.has('2-frame.glb'), 'wrote binary frame');
const data = sink.readSync('2-frame.glb');
const msg = new XVIZData(data).message();
const writtenPoints = msg.data.updates[0].primitives['/test/points'].points[0];
t.ok(writtenPoints.points, 'Has points');
t.ok(writtenPoints.colors, 'Has colors');
t.equals(writtenPoints.points[0], 1, 'point 1 matches input data');
t.equals(writtenPoints.points[3], 2, 'point 2 matches input data');
t.equals(writtenPoints.points[6], 3, 'point 3 matches input data');
test('XVIZJSONReader#readMetadata', t => {
const source = new MemorySourceSink();
const binBuilder = new XVIZJSONReader(source);
const testData = {
version: '2.0.0'
};
source.writeSync('1-frame.json', testData);
const result = binBuilder.readMetadata();
t.deepEquals(result, testData, 'readMetadata works with object');
t.end();
});
test('XVIZWriter#default-ctor messages close()', t => {
const sink = new MemorySourceSink();
const jsBuilder = new XVIZJSONWriter(sink);
const binBuilder = new XVIZBinaryWriter(sink);
const data = SAMPLE_STATE_UPDATE;
for (const builder of [jsBuilder, binBuilder]) {
builder.writeMessage(0, data);
builder.close();
t.ok(sink.has('0-frame.json'), 'wrote index for messages');
const expected = {
timing: [[100, 100, 0, '2-frame']]
};
t.deepEquals(
test('XVIZBinaryReader#readMessage', t => {
const source = new MemorySourceSink();
const binBuilder = new XVIZBinaryReader(source);
const testData = {
type: 'xviz/state_update',
data: {
update_type: 'snapshot'
}
};
source.writeSync('2-frame.glb', testData);
const result = binBuilder.readMessage(0);
t.deepEquals(result, testData, 'readMessage(0) works with object');
t.end();
});
function testWriterThrows(t, testCase, Writer) {
const sink = new MemorySourceSink();
const writer = new Writer(sink, testCase.options);
if (testCase.preTest) {
testCase.preTest(t, testCase, writer, sink);
}
t.throws(
() => writer.writeMessage(0, testCase.data),
testCase.exceptionRegex,
testCase.testMessage
);
if (testCase.postTest) {
testCase.postTest(t, testCase, writer, sink);
}
}
function testWriter(t, testCase, Writer, suffix) {
const sink = new MemorySourceSink();
const writer = new Writer(sink, testCase.options);
if (testCase.preTest) {
testCase.preTest(t, testCase, writer, sink);
}
let lookup = null;
let resultType = null;
if (testCase.type === 'm') {
lookup = '1-frame';
resultType = 'metadata';
writer.writeMetadata(testCase.data);
} else if (testCase.type === 'f') {
lookup = '2-frame';
resultType = 'state_update';
writer.writeMessage(0, testCase.data);
export function getBinaryTestDataSource() {
const source = new MemorySourceSink();
source.writeSync('0-frame.json', index);
source.writeSync('1-frame.glb', metadata);
source.writeSync('2-frame.glb', msg1);
source.writeSync('3-frame.glb', msg2);
return source;
}