### Question:
LinkedRow extends Row { public Optional<?> save() { return table.save(this); }  Table getTable(); Object getId(); void setId(Object id); Object getRevision(); void setRevision(Object revision); void removeIdAndRevision(); @Override Object put(String key, Object value); LinkedRow putAllKnown(Row from); Optional<?> insert(); Optional<?> save(); void delete(); T convertTo(Class<T> pojoClass); @Override LinkedRow addKeyVals(Object... keyVals);  }### Answer:
@Test public void save() { createTable("CREATE TABLE table1 (id INTEGER PRIMARY KEY, age INT)"); Table table1 = lSql.table("table1"); LinkedRow row1 = table1.newLinkedRow(); row1.addKeyVals("id", 1, "age", 1); Optional<?> row1Id = row1.save(); assertTrue(row1Id.isPresent()); assertEquals(row1Id.get(), 1); LinkedRow queriedRow1 = table1.load(1).get(); assertEquals(queriedRow1.getInt("age"), (Integer) 1); queriedRow1.put("age", 99); queriedRow1.save(); LinkedRow queriedRow1b = table1.load(1).get(); assertEquals(queriedRow1b.getInt("age"), (Integer) 99); }