(env
 (_
  (flags
   (:standard
    (-warn-error -a)
    (-w -26-27-32..39-60-66-67-69) ;; unused something
    (-w -50) ;; doc-comment
    (-w -7) ;; method-override
    (-w -9) ;; missing-record-field-pattern
    (-w -45) ;; open-shadow-label-constructor
    (-w -8-11-68-74) ;; partial/unused patterns
    -no-strict-formats
    -no-strict-sequence
    \
    -strict-formats
    -strict-sequence))))

(library
 (name ocaml_testing)
 (modules testing)
 (wrapped false))

(executable
 (name expect)
 (modules expect)
 (libraries toplevel_expect_test js_of_ocaml-toplevel)
 (flags
  (:standard -linkall))
 (js_of_ocaml
  (flags
   (:standard \ --Werror)
   --toplevel)
  (compilation_mode whole_program))
 (modes js))

(rule
 (copy expect.ml expect_wasm.ml))

(executable
 (name expect_wasm)
 (modules expect_wasm)
 (libraries
  wasm_of_ocaml-compiler.dynlink
  toplevel_expect_test
  js_of_ocaml
  js_of_ocaml-toplevel.common)
 (flags
  (:standard -linkall))
 (wasm_of_ocaml
  (flags
   (:standard \ --Werror)
   --toplevel)
  (compilation_mode whole_program))
 (modes wasm))
