App 2.32.1: drop the cruise control reads; the recorder becomes general
The 2.32.0 recording (ACC set to 101, 90 and 80 km/h behind another car) found none of it among 1,194 values: the head unit does not get the ACC data. Removed the cruise log and the set-speed read (EVHardware is as before 2.27.3); the finding is under "Signals the car does not provide". The recorder stays as the Signal recorder, for finding other signals. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LhzAVaUyqcw5PkGjz4mWW6
This commit is contained in:
@@ -1,54 +0,0 @@
|
||||
package com.evsuite.abrp;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
/** The cruise control debug log's lines and when it writes one — pure JVM. */
|
||||
public class CruiseLogTest {
|
||||
|
||||
private static List<String[]> readings(String cc, String ica, String dist) {
|
||||
return Arrays.asList(new String[] { "cc", cc }, new String[] { "ica", ica },
|
||||
new String[] { "dist", dist });
|
||||
}
|
||||
|
||||
@Test
|
||||
public void lineHasEveryValue() {
|
||||
assertEquals("cc 120.00 ica 1 dist 35.20", CruiseLog.values(readings("120.00", "1", "35.20")));
|
||||
assertEquals("cc unread (not available) ica 0 dist unread",
|
||||
CruiseLog.values(readings("unread (not available)", "0", "unread")));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void followedObjectAloneIsNoChange() {
|
||||
assertEquals(CruiseLog.steady(readings("120.00", "1", "35.20")),
|
||||
CruiseLog.steady(readings("120.00", "1", "12.00")));
|
||||
assertFalse(CruiseLog.steady(readings("120.00", "1", "1")).contains("dist"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void writesOnChangeAndEveryTwoSecondsWhileDriving() {
|
||||
String a = CruiseLog.steady(readings("120.00", "1", "35"));
|
||||
String b = CruiseLog.steady(readings("110.00", "1", "35"));
|
||||
assertTrue(CruiseLog.due(a, null, 0, 0, false));
|
||||
assertTrue(CruiseLog.due(b, a, 1000, 500, false));
|
||||
assertFalse(CruiseLog.due(a, a, 1000, 500, true));
|
||||
assertTrue(CruiseLog.due(a, a, 2500, 500, true));
|
||||
// Parked: nothing new, nothing written.
|
||||
assertFalse(CruiseLog.due(a, a, 60_000, 500, false));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void drivingIsDOrROrMoving() {
|
||||
assertTrue(CruiseLog.driving(null, 4));
|
||||
assertTrue(CruiseLog.driving(0f, 2));
|
||||
assertTrue(CruiseLog.driving(30f, 3));
|
||||
assertFalse(CruiseLog.driving(0f, 1));
|
||||
assertFalse(CruiseLog.driving(null, null));
|
||||
}
|
||||
}
|
||||
+10
-10
@@ -9,20 +9,20 @@ import java.util.TreeMap;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
/** The ACC change recorder's bookkeeping — pure JVM. */
|
||||
public class AccRecordingTest {
|
||||
/** The signal recorder's bookkeeping — pure JVM. */
|
||||
public class SignalRecordingTest {
|
||||
|
||||
private static Map<String, String> capture(String speed, String acc) {
|
||||
private static Map<String, String> capture(String speed, String feature) {
|
||||
Map<String, String> m = new TreeMap<>();
|
||||
m.put("speed", speed);
|
||||
m.put("acc", acc);
|
||||
m.put("feature", feature);
|
||||
m.put("steady", "1");
|
||||
return m;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void rarestChangeFirst() {
|
||||
AccRecording r = new AccRecording();
|
||||
SignalRecording r = new SignalRecording();
|
||||
r.add(0, capture("10", "0"));
|
||||
r.add(2000, capture("20", "0"));
|
||||
r.add(4000, capture("30", "120"));
|
||||
@@ -30,14 +30,14 @@ public class AccRecordingTest {
|
||||
r.add(8000, capture("50", "0"));
|
||||
List<String> summary = r.summary();
|
||||
assertEquals(2, summary.size());
|
||||
assertEquals("acc 2× 0 → 120", summary.get(0));
|
||||
assertEquals("feature 2× 0 → 120", summary.get(0));
|
||||
assertTrue(summary.get(1).startsWith("speed 4× 10 → 20 → 30 → 40 → 50"));
|
||||
assertEquals(5, r.captures());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void appearingAndVanishingKeysAreChanges() {
|
||||
AccRecording r = new AccRecording();
|
||||
SignalRecording r = new SignalRecording();
|
||||
Map<String, String> a = capture("1", "0");
|
||||
Map<String, String> b = capture("1", "0");
|
||||
b.put("new", "5");
|
||||
@@ -50,13 +50,13 @@ public class AccRecordingTest {
|
||||
@Test
|
||||
public void longValuesAreShortened() {
|
||||
String v = "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]";
|
||||
assertEquals(AccRecording.VALUE_CHARS, AccRecording.shorten(v).length());
|
||||
assertEquals("short", AccRecording.shorten("short"));
|
||||
assertEquals(SignalRecording.VALUE_CHARS, SignalRecording.shorten(v).length());
|
||||
assertEquals("short", SignalRecording.shorten("short"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void firstCaptureIsKeptWhole() {
|
||||
AccRecording r = new AccRecording();
|
||||
SignalRecording r = new SignalRecording();
|
||||
r.add(0, capture("1", "0"));
|
||||
r.note(500, "key 287 down");
|
||||
assertEquals(5, r.lines().size());
|
||||
Reference in New Issue
Block a user