only:testability progress
This commit is contained in:
parent
143d20ceca
commit
01d93eb3f9
|
@ -10,6 +10,8 @@ defaultTasks 'shadowJar'
|
|||
dependencies {
|
||||
api project(':config_definition_base')
|
||||
api project(':trigger-image')
|
||||
|
||||
testImplementation testFixtures(project(':config_definition_base'))
|
||||
}
|
||||
|
||||
shadowJar {
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.rusefi.test;
|
|||
|
||||
import com.rusefi.BitState;
|
||||
import com.rusefi.ReaderStateImpl;
|
||||
import com.rusefi.ldmp.TestFileCaptor;
|
||||
import com.rusefi.output.DataLogConsumer;
|
||||
import com.rusefi.output.GaugeConsumer;
|
||||
import com.rusefi.output.OutputsSectionConsumer;
|
||||
|
@ -53,7 +54,7 @@ public class OutputsTest {
|
|||
|
||||
@NotNull
|
||||
private static OutputsSectionConsumer runOriginalImplementation(String test, ReaderStateImpl state) {
|
||||
OutputsSectionConsumer tsProjectConsumer = new OutputsSectionConsumer(null);
|
||||
OutputsSectionConsumer tsProjectConsumer = new OutputsSectionConsumer(null, new TestFileCaptor());
|
||||
state.readBufferedReader(test, tsProjectConsumer);
|
||||
return tsProjectConsumer;
|
||||
}
|
||||
|
@ -70,7 +71,7 @@ public class OutputsTest {
|
|||
"\n" +
|
||||
"end_struct\n";
|
||||
ReaderStateImpl state = new ReaderStateImpl();
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null);
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null, new TestFileCaptor());
|
||||
state.readBufferedReader(test, dataLogConsumer);
|
||||
assertEquals(
|
||||
"entry = vvtStatus1_pTerm, \"vvtStatus1_pTerm\", float, \"%.3f\"\n" +
|
||||
|
@ -103,7 +104,7 @@ public class OutputsTest {
|
|||
state.getVariableRegistry().register("PACK_MULT_PERCENT", 100);
|
||||
state.getVariableRegistry().register("GAUGE_NAME_FUEL_BASE", "hello");
|
||||
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null);
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null, new TestFileCaptor());
|
||||
state.readBufferedReader(test, dataLogConsumer);
|
||||
assertEquals(
|
||||
"entry = issue_294_31, \"issue_294_31\", int, \"%d\"\n" +
|
||||
|
@ -133,7 +134,7 @@ public class OutputsTest {
|
|||
"end_struct\n";
|
||||
ReaderStateImpl state = new ReaderStateImpl();
|
||||
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null);
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null, new TestFileCaptor());
|
||||
state.readBufferedReader(test, dataLogConsumer);
|
||||
|
||||
assertEquals("\"fuel: base mass\"", state.getVariableRegistry().get("GAUGE_NAME_FUEL_BASE"));
|
||||
|
@ -157,7 +158,7 @@ public class OutputsTest {
|
|||
|
||||
ReaderStateImpl state = new ReaderStateImpl();
|
||||
state.getVariableRegistry().register("GAUGE_CATEGORY", "Alternator");
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null);
|
||||
DataLogConsumer dataLogConsumer = new DataLogConsumer(null, new TestFileCaptor());
|
||||
GaugeConsumer gaugeConsumer = new GaugeConsumer(null);
|
||||
state.readBufferedReader(test, dataLogConsumer, gaugeConsumer);
|
||||
assertEquals(
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
plugins {
|
||||
id 'java-library'
|
||||
id 'java-test-fixtures'
|
||||
id 'com.github.johnrengelman.shadow' version "${shadowVersion}"
|
||||
}
|
||||
|
||||
|
|
|
@ -108,9 +108,10 @@ public class LiveDataProcessor {
|
|||
public int handleYaml(Map<String, Object> data) throws IOException {
|
||||
JavaSensorsConsumer javaSensorsConsumer = new JavaSensorsConsumer();
|
||||
|
||||
OutputsSectionConsumer outputsSections = new OutputsSectionConsumer(tsOutputsDestination + File.separator + "generated/output_channels.ini");
|
||||
OutputsSectionConsumer outputsSections = new OutputsSectionConsumer(tsOutputsDestination + File.separator + "generated/output_channels.ini",
|
||||
fileFactory);
|
||||
|
||||
ConfigurationConsumer dataLogConsumer = new DataLogConsumer(tsOutputsDestination + File.separator + "generated/data_logs.ini");
|
||||
ConfigurationConsumer dataLogConsumer = new DataLogConsumer(tsOutputsDestination + File.separator + "generated/data_logs.ini", fileFactory);
|
||||
|
||||
SdCardFieldsContent sdCardFieldsConsumer = new SdCardFieldsContent();
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ import com.rusefi.ConfigFieldImpl;
|
|||
import com.rusefi.ReaderState;
|
||||
import com.rusefi.VariableRegistry;
|
||||
import com.rusefi.parse.TypesHelper;
|
||||
import com.rusefi.util.LazyFile;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.util.TreeSet;
|
||||
|
||||
|
@ -25,11 +25,13 @@ public class DataLogConsumer implements ConfigurationConsumer {
|
|||
|
||||
public static final String UNUSED = ConfigStructure.UNUSED_ANYTHING_PREFIX;
|
||||
private final String fileName;
|
||||
private final LazyFile.LazyFileFactory fileFactory;
|
||||
private final StringBuilder tsWriter = new StringBuilder();
|
||||
private final TreeSet<String> comments = new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
public DataLogConsumer(String fileName) {
|
||||
public DataLogConsumer(String fileName, LazyFile.LazyFileFactory fileFactory) {
|
||||
this.fileName = fileName;
|
||||
this.fileFactory = fileFactory;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -58,7 +60,7 @@ public class DataLogConsumer implements ConfigurationConsumer {
|
|||
|
||||
private void writeStringToFile(@Nullable String fileName, StringBuilder writer) throws IOException {
|
||||
if (fileName != null) {
|
||||
FileWriter fw = new FileWriter(fileName);
|
||||
LazyFile fw = fileFactory.create(fileName);
|
||||
fw.write(writer.toString());
|
||||
fw.close();
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.rusefi.output;
|
|||
|
||||
import com.devexperts.logging.Logging;
|
||||
import com.rusefi.ReaderState;
|
||||
import com.rusefi.util.LazyFile;
|
||||
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
|
@ -16,11 +17,13 @@ public class OutputsSectionConsumer implements ConfigurationConsumer {
|
|||
private static final Logging log = getLogging(OutputsSectionConsumer.class);
|
||||
|
||||
private final String tsOutputsSectionFileName;
|
||||
private final LazyFile.LazyFileFactory fileFactory;
|
||||
private final TsOutput tsOutput;
|
||||
private int sensorTsPosition;
|
||||
|
||||
public OutputsSectionConsumer(String tsOutputsSectionFileName) {
|
||||
public OutputsSectionConsumer(String tsOutputsSectionFileName, LazyFile.LazyFileFactory fileFactory) {
|
||||
this.tsOutputsSectionFileName = tsOutputsSectionFileName;
|
||||
this.fileFactory = fileFactory;
|
||||
tsOutput = new TsOutput(false);
|
||||
}
|
||||
|
||||
|
@ -40,7 +43,7 @@ public class OutputsSectionConsumer implements ConfigurationConsumer {
|
|||
|
||||
if (readerState.isStackEmpty()) {
|
||||
if (tsOutputsSectionFileName != null) {
|
||||
FileWriter fos = new FileWriter(tsOutputsSectionFileName);
|
||||
LazyFile fos = fileFactory.create(tsOutputsSectionFileName);
|
||||
fos.write(tsOutput.getContent());
|
||||
fos.close();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue