@Test
 public void testGetSemanticInterpretationCompundObject() throws Exception, SemanticError {
   EngineManager.registerEngineListFactory(SphinxEngineListFactory.class.getName());
   Recognizer recognizer =
       (Recognizer) EngineManager.createEngine(new RecognizerMode(SpeechLocale.ENGLISH));
   recognizer.allocate();
   final GrammarManager manager = recognizer.getGrammarManager();
   final RuleGrammar grammar = manager.createRuleGrammar("grammar:test", "test");
   final RuleComponent[] components =
       new RuleComponent[] {
         new RuleToken("test"),
         new RuleTag("out = new Object(); out.order = new Object();"),
         new RuleTag("out.order.topping=\"salami\";"),
         new RuleTag("out.order.size=\"medium\";"),
         new RuleTag("out.date=\"now\";")
       };
   final RuleSequence sequence = new RuleSequence(components);
   final Rule root = new Rule("test", sequence, Rule.PUBLIC);
   grammar.addRule(root);
   recognizer.processGrammars();
   final BaseResult result = new BaseResult(grammar, "test");
   final Jsapi20RecognitionResult res = new Jsapi20RecognitionResult(result);
   final DataModel model = Mockito.mock(DataModel.class);
   res.getSemanticInterpretation(model);
   Mockito.verify(model).updateVariable("test", 5);
   //
   // Assert.assertEquals("{\"order\":{\"topping\":\"salami\",\"size\":\"medium\"},\"date\":\"now\"}",
   //                ScriptingEngine.toJSON((ScriptableObject) interpretation));
 }
 @Test
 public void testGetSemanticInterpretation() throws Exception, SemanticError {
   EngineManager.registerEngineListFactory(SphinxEngineListFactory.class.getName());
   Recognizer recognizer =
       (Recognizer) EngineManager.createEngine(new RecognizerMode(SpeechLocale.ENGLISH));
   recognizer.allocate();
   final GrammarManager manager = recognizer.getGrammarManager();
   final RuleGrammar grammar = manager.createRuleGrammar("grammar:test", "test");
   final RuleComponent[] components =
       new RuleComponent[] {new RuleToken("test"), new RuleTag("T")};
   final RuleSequence sequence = new RuleSequence(components);
   final Rule root = new Rule("test", sequence, Rule.PUBLIC);
   grammar.addRule(root);
   recognizer.processGrammars();
   final BaseResult result = new BaseResult(grammar, "test");
   final Jsapi20RecognitionResult res = new Jsapi20RecognitionResult(result);
   final DataModel model = Mockito.mock(DataModel.class);
   Assert.assertEquals("T", res.getSemanticInterpretation(model));
 }