Updated socket test to use up to date structures
This commit is contained in:
@@ -67,12 +67,15 @@ describe.sequential('WebSocket Integration Tests', () => {
|
|||||||
await new Promise<void>((resolve) => {
|
await new Promise<void>((resolve) => {
|
||||||
wss.on('connection', (ws) => {
|
wss.on('connection', (ws) => {
|
||||||
// Server sends IMU data to client
|
// Server sends IMU data to client
|
||||||
const imuPayload = {
|
const imuPayload = IMUData.create({
|
||||||
x: 1.5,
|
x: 3.25,
|
||||||
y: 2.5,
|
y: 2.5,
|
||||||
z: 3.5,
|
z: 1.75,
|
||||||
temp: 25.0
|
heading: 10,
|
||||||
}
|
altitude: 11,
|
||||||
|
bmpTemp: 22,
|
||||||
|
pressure: 23
|
||||||
|
})
|
||||||
|
|
||||||
const encodedMessage = createEncodedMessage('imu', imuPayload)
|
const encodedMessage = createEncodedMessage('imu', imuPayload)
|
||||||
ws.send(encodedMessage)
|
ws.send(encodedMessage)
|
||||||
@@ -82,10 +85,15 @@ describe.sequential('WebSocket Integration Tests', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
expect(receivedIMUData).toBeDefined()
|
expect(receivedIMUData).toBeDefined()
|
||||||
expect(receivedIMUData.imu?.x).toBe(1.5)
|
expect(receivedIMUData?.imu).toBeDefined()
|
||||||
expect(receivedIMUData.imu?.y).toBe(2.5)
|
|
||||||
expect(receivedIMUData.imu?.z).toBe(3.5)
|
expect(receivedIMUData?.imu.x).toBe(3.25)
|
||||||
expect(receivedIMUData.imu?.temp).toBe(25.0)
|
expect(receivedIMUData?.imu.y).toBe(2.5)
|
||||||
|
expect(receivedIMUData?.imu.z).toBe(1.75)
|
||||||
|
expect(receivedIMUData?.imu.heading).toBe(10)
|
||||||
|
expect(receivedIMUData?.imu.altitude).toBe(11)
|
||||||
|
expect(receivedIMUData?.imu.bmpTemp).toBe(22)
|
||||||
|
expect(receivedIMUData?.imu.pressure).toBe(23)
|
||||||
|
|
||||||
unsubscribe()
|
unsubscribe()
|
||||||
})
|
})
|
||||||
@@ -140,12 +148,15 @@ describe.sequential('WebSocket Integration Tests', () => {
|
|||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
console.log('Client: Sending IMU data...')
|
console.log('Client: Sending IMU data...')
|
||||||
// Client sends IMU data to server
|
// Client sends IMU data to server
|
||||||
const imuData = {
|
const imuData = IMUData.create({
|
||||||
x: 3,
|
x: 3.25,
|
||||||
y: 2,
|
y: 2.5,
|
||||||
z: 1,
|
z: 1.75,
|
||||||
temp: 22
|
heading: 10,
|
||||||
}
|
altitude: 11,
|
||||||
|
bmpTemp: 22,
|
||||||
|
pressure: 23
|
||||||
|
})
|
||||||
socket.sendEvent(IMUData, imuData)
|
socket.sendEvent(IMUData, imuData)
|
||||||
console.log('Client: sendEvent called')
|
console.log('Client: sendEvent called')
|
||||||
}, 150)
|
}, 150)
|
||||||
@@ -154,10 +165,14 @@ describe.sequential('WebSocket Integration Tests', () => {
|
|||||||
// Verify server received the data
|
// Verify server received the data
|
||||||
expect(serverReceivedData).toBeDefined()
|
expect(serverReceivedData).toBeDefined()
|
||||||
expect(serverReceivedData?.imu).toBeDefined()
|
expect(serverReceivedData?.imu).toBeDefined()
|
||||||
expect(serverReceivedData?.imu?.x).toBe(3)
|
|
||||||
expect(serverReceivedData?.imu?.y).toBe(2)
|
expect(serverReceivedData?.imu.x).toBe(3.25)
|
||||||
expect(serverReceivedData?.imu?.z).toBe(1)
|
expect(serverReceivedData?.imu.y).toBe(2.5)
|
||||||
expect(serverReceivedData?.imu?.temp).toBe(22)
|
expect(serverReceivedData?.imu.z).toBe(1.75)
|
||||||
|
expect(serverReceivedData?.imu.heading).toBe(10)
|
||||||
|
expect(serverReceivedData?.imu.altitude).toBe(11)
|
||||||
|
expect(serverReceivedData?.imu.bmpTemp).toBe(22)
|
||||||
|
expect(serverReceivedData?.imu.pressure).toBe(23)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@@ -191,20 +206,27 @@ describe.sequential('WebSocket Integration Tests', () => {
|
|||||||
|
|
||||||
describe('WebsocketMessage Protobuf Encoding/Decoding', () => {
|
describe('WebsocketMessage Protobuf Encoding/Decoding', () => {
|
||||||
it('should encode and decode IMU data correctly', () => {
|
it('should encode and decode IMU data correctly', () => {
|
||||||
const imuData = {
|
|
||||||
x: 1.5,
|
const imuData = IMUData.create({
|
||||||
y: 2.5,
|
x: 3.25,
|
||||||
z: 3.5,
|
y: 2.5,
|
||||||
temp: 25.0
|
z: 1.75,
|
||||||
}
|
heading: 10,
|
||||||
|
altitude: 11,
|
||||||
|
bmpTemp: 22,
|
||||||
|
pressure: 23
|
||||||
|
})
|
||||||
|
|
||||||
const encoded = IMUData.encode(imuData).finish()
|
const encoded = IMUData.encode(imuData).finish()
|
||||||
const decoded = IMUData.decode(encoded)
|
const decoded = IMUData.decode(encoded)
|
||||||
|
|
||||||
expect(decoded.x).toBe(imuData.x)
|
expect(decoded.x).toBe(3.25)
|
||||||
expect(decoded.y).toBe(imuData.y)
|
expect(decoded.y).toBe(2.5)
|
||||||
expect(decoded.z).toBe(imuData.z)
|
expect(decoded.z).toBe(1.75)
|
||||||
expect(decoded.temp).toBe(imuData.temp)
|
expect(decoded.heading).toBe(10)
|
||||||
|
expect(decoded.altitude).toBe(11)
|
||||||
|
expect(decoded.bmpTemp).toBe(22)
|
||||||
|
expect(decoded.pressure).toBe(23)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('should encode and decode two empty types correctly', () => {
|
it('should encode and decode two empty types correctly', () => {
|
||||||
@@ -222,22 +244,28 @@ describe('WebsocketMessage Protobuf Encoding/Decoding', () => {
|
|||||||
|
|
||||||
it('should encode and decode complete WebsocketMessage', () => {
|
it('should encode and decode complete WebsocketMessage', () => {
|
||||||
const original = WebsocketMessage.create({
|
const original = WebsocketMessage.create({
|
||||||
imu: {
|
imu: IMUData.create({
|
||||||
x: 1.5,
|
x: 3.25,
|
||||||
y: 2.5,
|
y: 2.5,
|
||||||
z: 3.5,
|
z: 1.75,
|
||||||
temp: 25.0
|
heading: 10,
|
||||||
}
|
altitude: 11,
|
||||||
|
bmpTemp: 22,
|
||||||
|
pressure: 23
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
const encoded = WebsocketMessage.encode(original).finish()
|
const encoded = WebsocketMessage.encode(original).finish()
|
||||||
const decoded = WebsocketMessage.decode(encoded)
|
const decoded = WebsocketMessage.decode(encoded)
|
||||||
|
|
||||||
expect(decoded.imu).toBeDefined()
|
expect(decoded.imu).toBeDefined()
|
||||||
expect(decoded.imu?.x).toBe(1.5)
|
expect(decoded.imu?.x).toBe(3.25)
|
||||||
expect(decoded.imu?.y).toBe(2.5)
|
expect(decoded.imu?.y).toBe(2.5)
|
||||||
expect(decoded.imu?.z).toBe(3.5)
|
expect(decoded.imu?.z).toBe(1.75)
|
||||||
expect(decoded.imu?.temp).toBe(25.0)
|
expect(decoded.imu?.heading).toBe(10)
|
||||||
|
expect(decoded.imu?.altitude).toBe(11)
|
||||||
|
expect(decoded.imu?.bmpTemp).toBe(22)
|
||||||
|
expect(decoded.imu?.pressure).toBe(23)
|
||||||
})
|
})
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user