package Ġspace . k science . k math . asm Ċ Ċ import Ġspace . k science . k math . ast . mst In Field Ċ import Ġspace . k science . k math . expressions . invoke Ċ import Ġspace . k science . k math . operations . Real Field Ċ import Ġkotlin . test . Test Ċ import Ġkotlin . test . assertEquals Ċ Ċ internal Ġclass ĠTest Asm Special ization Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Unary Plus () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġunary Operation Function ("+ ")( bind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Unary Minus () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġunary Operation Function ("- ")( bind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals (- 2 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Add () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġbinary Operation Function ("+ ")( bind Symbol (" x "), Ġbind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 4 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Sine () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġunary Operation Function (" sin ")( bind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 . 0 , Ġexpr (" x " Ġto Ġ 0 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Minus () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġbinary Operation Function ("- ")( bind Symbol (" x "), Ġbind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Divide () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field . mst In Field Ġ{ Ġbinary Operation Function ("/ ")( bind Symbol (" x "), Ġbind Symbol (" x ")) Ġ}. compile () ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Power () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpr Ġ= ĠReal Field ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. mst In Field Ġ{ Ġbinary Operation Function (" pow ")( bind Symbol (" x "), Ġnumber ( 2 )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. compile () ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( 4 . 0 , Ġexpr (" x " Ġto Ġ 2 . 0 )) ĊĠĠĠ Ġ} Ċ } Ċ