Speed testen (anfang)
This commit is contained in:
@@ -38,6 +38,45 @@ describe('GCode Speed Tests', () => {
|
||||
// But since x,y,z changed, telnetSender1 should have the command
|
||||
});
|
||||
|
||||
|
||||
test('G1 with Feedrate F300 - mit env', () => {
|
||||
|
||||
|
||||
const previousValue = process.env.ROBOT_USE_SPEED_CALC;
|
||||
process.env.ROBOT_USE_SPEED_CALC = 'true';
|
||||
|
||||
|
||||
const L1 = 300;
|
||||
const L2 = 300;
|
||||
const L3 = 20;
|
||||
|
||||
const Robot2 = require('../robot/Robot'); // neu geladen
|
||||
const robot = new Robot2(L1, L2, L3);
|
||||
|
||||
const telnetSender1 = new TelnetSender("test.test", 5000, "x", "y", "z");
|
||||
|
||||
robot.cmdReceivers.push(telnetSender1);
|
||||
|
||||
// G1 with F300
|
||||
robot.useSpeedCalc = true; // Aktiviere die neue Logik
|
||||
GCode.receiveGCode(robot, "G90 G1 x0 f700"); // Absolut!!
|
||||
GCode.receiveGCode(robot, "G91 G1 x120 f700"); // relativ!!
|
||||
|
||||
// Check telnetSender1 (x,y,z axes)
|
||||
expect(telnetSender1.tSocket.written).toContain('G1');
|
||||
expect(telnetSender1.tSocket.written).toContain('f700');
|
||||
expect(telnetSender1.tSocket.written).toMatch(/f700\.00/); // Exact format
|
||||
|
||||
// telnetSender2 and telnetSender3 might not have output if no changes
|
||||
// But since x,y,z changed, telnetSender1 should have the command
|
||||
if (previousValue === undefined) {
|
||||
delete process.env.ROBOT_USE_SPEED_CALC;
|
||||
} else {
|
||||
process.env.ROBOT_USE_SPEED_CALC = previousValue;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
test('G1 without Feedrate - should use default f200', () => {
|
||||
const L1 = 300;
|
||||
const L2 = 300;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
const Robot = require('../robot/Robot')
|
||||
const GCode = require('../robot/GCode.js');
|
||||
const MockCmdReceiver = require('./helpers/mockCmdReceiver')
|
||||
|
||||
describe('Robot.sendCommand & cmdReceivers', () => {
|
||||
@@ -84,6 +85,18 @@ describe('Robot.sendCommand & cmdReceivers', () => {
|
||||
expect(newPos.y).toBe(20)
|
||||
})
|
||||
|
||||
test('newPos enthält aktuelle Motorwerte GCode', () => {
|
||||
const r = new MockCmdReceiver()
|
||||
robot.cmdReceivers.push(r)
|
||||
|
||||
GCode.receiveGCode(robot, "G90 G1 x10 y200 z0 f300")
|
||||
|
||||
robot.sendCommand()
|
||||
|
||||
const { newPos } = r.lastCall()
|
||||
expect(newPos.x).toBe(5) // Dummy Test, soll eventuell anders sein.
|
||||
})
|
||||
|
||||
test('mehrere Receiver werden alle benachrichtigt', () => {
|
||||
const r1 = new MockCmdReceiver('r1')
|
||||
const r2 = new MockCmdReceiver('r2')
|
||||
|
||||
Reference in New Issue
Block a user