public void test_isKnownFormat() { PositionCsvLoader test = PositionCsvLoader.standard(); assertEquals(test.isKnownFormat(FILE.getCharSource()), true); }
public void test_load_invalidNoType() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<Position>> trades = test.parse(ImmutableList.of(CharSource.wrap("Id"))); assertEquals(trades.getFailures().size(), 1); FailureItem failure = trades.getFailures().get(0); assertEquals(failure.getReason(), FailureReason.PARSING); assertEquals(failure.getMessage().contains("CSV file does not contain 'Strata Position Type' header"), true); }
public void test_load_invalidNoHeader() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<Position>> trades = test.parse(ImmutableList.of(CharSource.wrap(""))); assertEquals(trades.getFailures().size(), 1); FailureItem failure = trades.getFailures().get(0); assertEquals(failure.getReason(), FailureReason.PARSING); assertEquals(failure.getMessage().contains("CSV file could not be parsed"), true); }
public void test_load_genericSecurity() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<Position>> trades = test.load(FILE); List<GenericSecurityPosition> filtered = trades.getValue().stream() .flatMap(filtering(GenericSecurityPosition.class)) .collect(toImmutableList()); assertEquals(filtered.size(), 1); assertBeanEquals(SECURITY3FULL, filtered.get(0)); }
public void test_load_security() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<Position>> trades = test.load(FILE); List<SecurityPosition> filtered = trades.getValue().stream() .flatMap(filtering(SecurityPosition.class)) .collect(toImmutableList()); assertEquals(filtered.size(), 2); assertBeanEquals(SECURITY1, filtered.get(0)); assertBeanEquals(SECURITY2, filtered.get(1)); }
public void test_load_invalidUnknownType() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<Position>> trades = test.parse(ImmutableList.of(CharSource.wrap("Strata Position Type\nFoo"))); assertEquals(trades.getFailures().size(), 1); FailureItem failure = trades.getFailures().get(0); assertEquals(failure.getReason(), FailureReason.PARSING); assertEquals(failure.getMessage(), "CSV file position type 'Foo' is not known at line 2"); }
public void test_parseFiltering() { PositionCsvLoader test = PositionCsvLoader.standard(); assertEquals(test.parse(ImmutableList.of(FILE.getCharSource())).getValue().size(), 3); // 7 errors assertEquals(test.parse(ImmutableList.of(FILE.getCharSource()), SecurityPosition.class).getValue().size(), 10); assertEquals(test.parse(ImmutableList.of(FILE.getCharSource()), ResolvableSecurityPosition.class).getValue().size(), 3); assertEquals(test.parse(ImmutableList.of(FILE.getCharSource()), GenericSecurityPosition.class).getValue().size(), 1); }
public void test_parseLightweight() { PositionCsvLoader test = PositionCsvLoader.standard(); ValueWithFailures<List<SecurityPosition>> trades = test.parseLightweight(ImmutableList.of(FILE.getCharSource())); List<SecurityPosition> filtered = trades.getValue();