src/HOL/Codegenerator_Test/Code_Test_OCaml.thy
author Andreas Lochbihler
Fri, 18 Dec 2015 11:14:28 +0100
changeset 61856 4b1b85f38944
parent 59720 f893472fff31
child 63167 0909deb8059b
permissions -rw-r--r--
add gcd instance for integer and serialisation to target language operations

(*  Title:      HOL/Codegenerator_Test/Code_Test_OCaml.thy
    Author:     Andreas Lochbihler, ETH Zurich

Test case for test_code on OCaml
*)

theory Code_Test_OCaml imports  "../Library/Code_Test" "../GCD" begin

test_code "14 + 7 * -12 = (140 div -2 :: integer)" in OCaml

value [OCaml] "14 + 7 * -12 :: integer"

test_code -- \<open>Tests for the serialisation of @{const gcd} on @{typ integer}\<close>
  "gcd 15 10 = (5 :: integer)"
  "gcd 15 (- 10) = (5 :: integer)"
  "gcd (- 10) 15 = (5 :: integer)"
  "gcd (- 10) (- 15) = (5 :: integer)"
  "gcd 0 (- 10) = (10 :: integer)"
  "gcd (- 10) 0 = (10 :: integer)"
  "gcd 0 0 = (0 :: integer)"
in OCaml

end