// some other tests set this to null.
// set it here in case tests are run out of the usual order.
ShingleMatrixFilter.defaultSettingsCodec = new ShingleMatrixFilter.SimpleThreeDimensionalTokenSettingsCodec();
Matrix matrix = new Matrix();
matrix.new Column(tokenFactory("no", 1));
matrix.new Column(tokenFactory("surprise", 1));
matrix.new Column(tokenFactory("to", 1));
matrix.new Column(tokenFactory("see", 1));
matrix.new Column(tokenFactory("england", 1));
matrix.new Column(tokenFactory("manager", 1));
Column col = matrix.new Column();
// sven göran eriksson is a multi token synonym to svennis
col.new Row().getTokens().add(tokenFactory("svennis", 1));
Column.Row row = col.new Row();
row.getTokens().add(tokenFactory("sven", 1));
row.getTokens().add(tokenFactory("göran", 1));
row.getTokens().add(tokenFactory("eriksson", 1));
matrix.new Column(tokenFactory("in", 1));
matrix.new Column(tokenFactory("the", 1));
matrix.new Column(tokenFactory("croud", 1));
TokenStream ts = new ShingleMatrixFilter(matrix, 2, 4, new Character('_'), true, new ShingleMatrixFilter.SimpleThreeDimensionalTokenSettingsCodec());
// for (Token token = ts.next(new Token()); token != null; token = ts.next(token)) {
// System.out.println("assertNext(ts, \"" + token.term() + "\", " + token.getPositionIncrement() + ", " + (token.getPayload() == null ? "1.0" : PayloadHelper.decodeFloat(token.getPayload().getData())) + "f, " + token.startOffset() + ", " + token.endOffset() + ");");