[1] "`c0` should have attribute \"blah\""

`attr(c0.2, "blah")` should be character (is integer)

[1] "`attr(c0.2, \"blah\")` should be character (is integer)"

`(z ~ w + 1)[[3]]` should be "symbol" (is "language")

`(z ~ w + 1)[[3]][[3]]` should have identical constant values

[1] "`(z ~ w + 1)[[3]][[3]]` should have identical constant values"

`(x ~ y)[[3]]` should be a call to `+` (is "symbol")

[1] "`(x ~ y)[[3]]` should be a call to `+` (is \"symbol\")"

alike(y ~ x^2 + x * z + z + w:z, q ~ l^2 + l * j + j + w:j)

alike(y ~ x^2 + x * z + z + w:z, q ~ l^3 + l * j + j + w:j)

`(q ~ l^3 + l * j + j + w:j)[[3]][[2]][[2]][[2]][[3]]` should have identical constant values

exp.1 <- parse(text = "x + y; fun2(fun(1, 2, 3), z)", keep.source = TRUE)

# # Repeating parses to deal with potential parse issues in clean R runs

exp.2 <- parse(text = "z + 2; fun(fun2(1, 2, 3), q)", keep.source = TRUE)

exp.3 <- parse(text = "z + fun(3); fun(fun2(a, b, c), 3)", keep.source = TRUE)

`exp.2[[1]][[3]]` should be "symbol" (is "double")

`exp.3[[1]][[3]]` should be "double" (is "language")

`exp.2[[1]][[3]]` should be a call to `fun` (is "double")

[1] "`exp.2[[1]][[3]]` should be a call to `fun` (is \"double\")"

`exp.6[[2]][[3]]` should be "symbol" (is "double")

`quote(x)` should be `NULL` (is "symbol")

[1] "`quote(x)` should be `NULL` (is \"symbol\")"

# TRUE, NULL matches anything as language object

# FALSE, quoting NULL doesn't make it language

[1] "`c0` should be \"symbol\" (is \"language\")"

`quote(x)` should be a call to `fun` (is "symbol")

[1] "`quote(x)` should be a call to `fun` (is \"symbol\")"

`print` should have argument `digits` after argument `...`

[1] "`print` should have argument `digits` after argument `...`"

alike(fun, fun2, settings = vetr_settings(attr.mode = 2L))

[1] "`fun2` should have attribute \"srcref\""

alike(fun2, fun, settings = vetr_settings(attr.mode = 1L))

alike(fun2, fun, settings = vetr_settings(attr.mode = 2L))

`fun` should not have attribute "srcref"

[1] "`fun` should not have attribute \"srcref\""

alike(1L, 1, settings = vetr_settings(type.mode = 1L))