       y :: Float = x
 
     test 'throw primitive extended assign', ->
-      throws -> parse """
+      shouldBeTypeError """
       x :: Float = 3.3
       y :: Int = x
       """

reporter = require '../lib/reporter'
parse = (coffee) ->
  reporter.errors = []
  parse coffee

suite 'TypeChecker', ->
  setup ->

          n

    test 'throw return type mismatch', ->
      shouldBeTypeError """
        arr :: Number[] = ("" for i in [1,2,3])
      """

    test 'throw target mismatch', ->
      shouldBeTypeError """
        arr :: Number[] = (i for i :: Number in [1,2,""])
      """

    test 'for of', ->
      list :: Number[] =
