package uk.nhs.kch.rassyeyanie.common.testing.unit; import java.io.IOException; import ca.uhn.hl7v2.HL7Exception; import ca.uhn.hl7v2.parser.EncodingNotSupportedException; import ca.uhn.hl7v2.parser.PipeParser; import ca.uhn.hl7v2.validation.impl.NoValidation; public class TranslatedTestMessage implements TestMessage { private final String name; private String inputMessage; private String outputMessage; private final String output; public TranslatedTestMessage(String name, String output) { this.name = name; this.output = output; } @Override public void LoadResources(Class<?> testClass, PipeParser pipeParser) throws IOException, EncodingNotSupportedException, HL7Exception { this.inputMessage = TestUtils.getClassResourceStream(testClass, this.name); pipeParser.setValidationContext(new NoValidation()); this.outputMessage = pipeParser .parse(TestUtils.getClassResourceStream(testClass, this.output)) .encode(); // (AbstractMessage)pipeParser.parse( // TestUtils.getClassResourceStream(testClass, // this.output)).getFieldSeparatorValue("|"); } @Override public String getName() { return this.name; } @Override public String getInputMessage() { return this.inputMessage; } @Override public String getOutputMessage() { return this.outputMessage; } @Override public String toString() { return "Translated: " + this.name; } }