isac-java/src/java-tests/isac/gui/mawen/syntax/ScalaAstFromString.scala
author Walther Neuper <walther.neuper@jku.at>
Fri, 26 Mar 2021 10:45:05 +0100
changeset 5239 b4e3883d7b66
parent 5229 6bf0e95981e3
permissions -rw-r--r--
reset mathematics-engine to Isabelle2015

note: for this version libisabelle was available,
which connects front-end (Java) and back-end (Isabelle/ML)
     1 /**
     2  * @author Walther Neuper
     3  * Created on Mar 30, 2017
     4  * (c) due to copyright terms
     5  */
     6 
     7 package isac.gui.mawen.syntax
     8 
     9 import isac.bridge.Isabelle_Isac
    10 import isac.bridge.xml.DataTypes
    11 import isac.gui.mawen.syntax.Ast._   //"._" simplifies "Ast.Ast" to "Ast"
    12 import edu.tum.cs.isabelle.japi._    // for JSystem
    13 
    14 import junit.framework.TestCase
    15 import org.junit.Assert._
    16 
    17 /** 
    18  * Create libisabelle's Scala Ast from String for tests.
    19  * Compare ScalaTermFromString.
    20  */
    21 class ScalaAstFromString extends TestCase {
    22   
    23   var sys_ : JSystem = null
    24   override def setUp() {
    25     sys_ = Isabelle_Isac.connect();
    26   }
    27   
    28   def test_etc() {
    29     println("/--BEGIN isac.gui.mawen.syntax.ScalaAstFromString#test_etc");
    30     
    31     //numeral 123 is Ast.Variable("123")
    32     var term_str = "123"
    33     var tree = sys_.invoke(isac.bridge.IsacOperations.SCALATERM_OF_STRING, term_str)
    34     var form = DataTypes.xml_to_Formula_NEW(tree)
    35     var ast = form.getTerm
    36     //println(Ast.raw_string_of(ast))
    37 //    assertEquals(ast, Ast.Variable("123"))
    38     assertEquals(term_str, Ast.math_string_of(ast))
    39 
    40     //create <code>TestDATA.box_07_with_cursor</code>
    41     term_str = "[aaa, bbb, ccc]"
    42     tree = sys_.invoke(isac.bridge.IsacOperations.SCALATERM_OF_STRING, term_str)
    43     form = DataTypes.xml_to_Formula_NEW(tree)
    44     ast = form.getTerm
    45     assertEquals(term_str, Ast.math_string_of(ast))
    46     
    47     println("\\--END isac.gui.mawen.syntax.ScalaAstFromString#test_etc");
    48   }
    49 
    50   override def tearDown() {
    51     sys_.dispose()
    52     super.tearDown()
    53   }
    54 }