# FALSE, function not defined in empty env

`call.b` should have argument `b` as first argument (has unnamed argument)

[1] "`call.b` should have argument `b` as first argument (has unnamed argument)"

alike(call.a, call.b, env = emptyenv(), settings = vetr_settings(env = environment()))

# TRUE, verify that settings takes precedence

alike(`&&`, function() NULL, settings = vetr_settings(type.mode = 1))

`function() NULL` should be type "special" (is "closure")

[1] "`function() NULL` should be type \"special\" (is \"closure\")"

`vet/vetr` usage error: argument `settings` must be a list or NULL (is character).

Error in alike(1, 2, settings = letters) : 
  `vet/vetr` usage error: argument `settings` must be a list or NULL (is character).

`vet/vetr` usage error: `settings` must be a list of length 16.

Error in alike(1, 2, settings = list()) : 
  `vet/vetr` usage error: `settings` must be a list of length 16.

alike(1, 2, settings = setNames(vector("list", 16), letters[1:16]))

`vet/vetr` usage error: argument `settings` names are not in format  produced by `vetr_settings`.

Error in alike(1, 2, settings = setNames(vector("list", 16), letters[1:16])) : 
  `vet/vetr` usage error: argument `settings` names are not in format  produced by `vetr_settings`.

alike(1, 2, settings = vector("list", 16))

`vet/vetr` usage error: argument `settings` must be a named list as produced by `vetr_settings`.

Error in alike(1, 2, settings = vector("list", 16)) : 
  `vet/vetr` usage error: argument `settings` must be a named list as produced by `vetr_settings`.

`1.1` should be type "integer-like" (is "double")

[1] "`1.1` should be type \"integer-like\" (is \"double\")"

# TRUE, by default, integers are always considered real

# FALSE, we do not check numerics for integerness if longer than 100

# Scalarness can now be checked at same time as type

`length(c(TRUE, TRUE))` should be 1 (is 2)

[1] "`length(c(TRUE, TRUE))` should be 1 (is 2)"

# Zero length match any length of same type

[1] "`length(integer())` should be 10 (is 0)"

alike(list(integer(), list(character(), logical(1L))), list(1:10, 
    list(letters, TRUE)))