### Question:
CobolVariableContext implements SubContext<Variable> { @Override public void define(Variable variable, Location location) { variables.add(variable); variableDefinitions.put(variable.getName(), location); createRelationBetweenVariables(); }  @Override void define(Variable variable, Location location); @Override void addUsage(String variable, Location location); @Override List<Variable> getAll(); @Override boolean contains(String name); @Override Multimap<String, Location> getDefinitions(); @Override Multimap<String, Location> getUsages(); @Override void merge(SubContext<Variable> subContext); Variable get(String name); boolean parentContainsSpecificChild(String rootVariableName, String targetVariableName); static final int LEVEL_77; static final int LEVEL_66; static final int LEVEL_88; }### Answer:
@Test void testDefine() { context.define(var1, ERROR_LOCALITY_1); context.define(var2, ERROR_LOCALITY_1); context.define(var3, ERROR_LOCALITY_1); context.define(var4, ERROR_LOCALITY_1); context.define(var5, ERROR_LOCALITY_1); context.define(var6, ERROR_LOCALITY_1); context.define(var7, ERROR_LOCALITY_1); context.define(var8, ERROR_LOCALITY_1); assertEquals(8, context.getAll().size()); assertEquals(var1, context.get(VAR1)); }