@Test public void testMultipleMCOSInArray() throws IOException { File file = fileFromStream("/mcos/simplesingletext_multiplearray.mat"); MatFileReader reader = new MatFileReader(file); Map<String, MLArray> content = reader.getContent(); assertThat(content.size(), equalTo(1)); MLObject obj = (MLObject) content.get("a"); assertThat(obj, notNullValue()); assertThat(obj.getName(), equalTo("a")); assertThat(obj.getClassName(), equalTo("SimpleSingleText")); assertThat(((MLDouble) obj.getFields(0).get("test_text")).get(0), equalTo(1.0)); assertThat(((MLDouble) obj.getFields(1).get("test_text")).get(0), equalTo(2.0)); assertThat(((MLDouble) obj.getFields(2).get("test_text")).get(0), equalTo(3.0)); assertThat(((MLDouble) obj.getFields(3).get("test_text")).get(0), equalTo(4.0)); }
@Test public void testObject() throws Exception { MatFileReader mfr = new MatFileReader(); Map<String, MLArray> content = mfr.read(getTestFile("object.mat")); MLObject mlObject = (MLObject) content.get("X"); assertEquals("inline", mlObject.getClassName()); assertTrue(mlObject.getFields(0).keySet().contains("expr")); }
@Test public void testParsingSimpleSingleTextUnmodifiedMCOS() throws IOException { File file = fileFromStream("/mcos/simplesingletext_unmodified.mat"); MatFileReader reader = new MatFileReader(file); Map<String, MLArray> content = reader.getContent(); assertThat(content.size(), equalTo(1)); MLObject obj = (MLObject) content.get("obj"); assertThat(obj, notNullValue()); assertThat(obj.getName(), equalTo("obj")); assertThat(obj.getClassName(), equalTo("SimpleSingleText")); Map<String, MLArray> fields = obj.getFields(0); assertThat(fields.size(), equalTo(1)); MLChar field = (MLChar) fields.get("test_text"); assertThat(field.getString(0), equalTo("Default text")); }
assertThat(((MLObject) content.get("obj3")).getFields(0), equalTo(obj.getFields(0))); Map<String, MLArray> fields = obj.getFields(0); assertThat(fields.size(), equalTo(1)); assertThat(((MLObject) content.get("obj1")).getFields(0), equalTo(obj.getFields(0))); fields = obj.getFields(0); assertThat(fields.size(), equalTo(1)); assertThat(((MLObject) content.get("obj4")).getFields(0), equalTo(obj.getFields(0))); fields = obj.getFields(0); assertThat(fields.size(), equalTo(1)); assertThat(((MLObject) content.get("obj2")).getFields(0), equalTo(obj.getFields(0))); fields = obj.getFields(0); assertThat(fields.size(), equalTo(1));
assertThat(data.getClassName(), equalTo("Data")); assertThat(data.getSize(), equalTo(1)); Map<String, MLArray> dataO = data.getFields(0); assertThat(dataO.size(), equalTo(10)); assertThat(((MLChar) dataO.get("function_name")).getString(0), equalTo("quad_fcn_subtype")); assertThat(Grid2.getClassName(), equalTo("Grid")); assertThat(Grid2.getSize(), equalTo(1)); Map<String, MLArray> gridO = Grid2.getFields(0); assertThat(gridO.get("new_cell_pb").getSize(), equalTo(0)); assertThat(gridO.get("delete_cell_pb").getSize(), equalTo(0)); assertThat(((MLObject) gridO.get("rGrid")).getFields(0), equalTo(((MLObject) dataO.get("Grid0")).getFields(0))); assertThat(((MLDouble) gridO.get("grid_index")).get(0), equalTo(2.0)); Map<String, MLArray> cellO = cells.getFields(0); assertThat(((MLChar) cells.getFields(1).get("cond_text")).getString(0), equalTo("a ~= 0"));