Error in `l + data.frame(a = 3, b = 0, c = "a")`: non-numeric argument to binary operator

expect_lemon_plot <- function(object) expect_s3_class(object, 'lemon_plot')
test_that('ggplot2 does not break lemon_plot by altering class', {
p <- ggplot(data.frame(a=1:2, b=runif(2), c=letters[1:2]), aes(a, b, colour=c)) + geom_blank()
expect_error(l + 1, regexp = "Can't add `1`")
expect_lemon_plot(l + data.frame(a=3, b=0, c='a'))
expect_lemon_plot(l + list(data=data.frame(a=3, b=0, c='a'), scale_x_continuous()))

'ggplot2 does not break lemon_plot by altering class'

ggplot2 does not break lemon_plot by altering class