### Question:
AisBStaticDataReportPartA extends AbstractAisBStaticDataReport { public Optional<String> getName() { return name; } AisBStaticDataReportPartA(String message, int padBits);  AisBStaticDataReportPartA(String message, String source, int padBits);  AisBStaticDataReportPartA(AisExtractorFactory factory, String message, String source,
            int padBits); Optional<String> getName(); @Override String toString();  }### Answer:
@Test public void testParser() { final String line = "H7PH6A15DDDr1=@5:0f22222220"; final String source = "some source"; int p = AbstractAisBStaticDataReport.extractPartNumber(Util.getAisExtractorFactory(), line, 0); AisBStaticDataReportPartA message = new AisBStaticDataReportPartA(line, source, 0); assertEquals(24, message.getMessageId()); assertEquals(503711300, message.getMmsi()); assertEquals(0, message.getRepeatIndicator()); assertEquals(0, message.getPartNumber()); assertEquals("QUEEN STAR K", message.getName().get()); assertEquals(source, message.getSource()); }