         done err, _.object _.keys(schema.properties), ipsumVals
     when "array"
       async.map(
-        _.range(0, Math.random() * 100)
+        _.range(0, Math.random() * MAX_ARRAY_LENGTH)
         (i, done) -> toIpsum schema.items, done
         done)
     when "any"

    when "boolean"
      ret Math.random() > 0.5
    when "number"
      ret Math.random() * 100
    when "integer"
      ret Math.round(Math.random() * 100)
    when "string"
      done null, "TODO"
    when "object"


env = jsv.createEnvironment "json-schema-draft-03" 
metaSchema = env.getDefaultSchema()# "http://json-schema.org/draft-03/schema"

MAX_NUMBER = 100
MIN_NUMBER = -100
MAX_ARRAY_LENGTH = 100

# Generates a random number b/w max and min
random = (max, min) ->
  Math.random() * (max + min) + min

# Generate a JSON object that matches the given schema filled with ipsum
# text.
