Question: Create test cases for following classes using JUnit4. public class Parser extends AbstractParser{ @Override public UMLSequenceDiagram parse(String csvFilePath) { super.readFile(csvFilePath); super.checkFormat(); for (CSVRecord rec :
Create test cases for following classes using JUnit4.
public class Parser extends AbstractParser{
@Override public UMLSequenceDiagram parse(String csvFilePath) { super.readFile(csvFilePath); super.checkFormat(); for (CSVRecord rec : super.records) { // UMLSequenceDiagram // UMLSymbols: // UMLActor // UMLClass (Boundary, Entity, Control) // UMLLifeline // UMLActivationBox // UMLMessage (SynchronousMessage, UMLReturnMessage, UMLSelfMessage, UMLCreateMessage, UMLDeleteMessage) // UMLContainer (UMLAlternatives, UMLOption, UMLLoop, UMLCondition, UMLElse)
//Creation Conditions: if (rec.get("Name").equals("Actor")) { super.objectCr.createActor(rec); } if (rec.get("Name").equals("Object")) { super.objectCr.createClass(rec); } } return super.objectCr.getSequenceDiagram(); } }
public class ObjectCreator { private UMLSequenceDiagram seqDiagram; public ObjectCreator() { this.seqDiagram = new UMLSequenceDiagram(); } // UMLSequenceDiagram // UMLSymbols: // UMLActor // UMLClass (Boundary, Entity, Control) // UMLLifeline // UMLActivationBox // UMLMessage (SynchronousMessage, UMLReturnMessage, UMLSelfMessage, UMLCreateMessage, UMLDeleteMessage) // UMLContainer (UMLAlternatives, UMLOption, UMLLoop, UMLCondition, UMLElse) public UMLSequenceDiagram getSequenceDiagram() { return this.seqDiagram; } private UMLSymbol getByHeader(CSVRecord record, List
public class FormatManager { private INotifier notifier; public void addNotifier(INotifier notifier) { this.notifier = notifier; } public boolean checkFormat(CSVRecord header) { boolean result = true; if (!header.get(0).equals("Id")) { result = false; } if (!header.get(1).equals("Name")) { result = false; } if (!header.get(2).equals("Shape Library")) { result = false; } if (!header.get(3).equals("Page ID")) { result = false; } if (!header.get(4).equals("Contained By")) { result = false; } if (!header.get(5).equals("Line Source")) { result = false; } if (!header.get(6).equals("Line Destination")) { result = false; } if (!header.get(7).equals("Source Arrow")) { result = false; } if (!header.get(8).equals("Destination Arrow")) { result = false; } if (!header.get(9).equals("Text Area 1")) { result = false; } if (result = true && this.notifier != null) { sendNotification(); } return result; } private void sendNotification() { this.notifier.notifyFormatChange(); } }
public class CSVFileReader { private File csvFile; private List
} public abstract class AbstractParser { private CSVFileReader csvRead; private FormatManager formatMng; protected ObjectCreator objectCr; protected List
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
