@@ -7358,7 +7358,7 @@ x = runif(2)
73587358test(1514.6, isRealReallyInt32(x), FALSE)
73597359x = numeric()
73607360test(1514.7, isRealReallyInt32(x), TRUE)
7361- test(1514.8, isRealReallyInt32(9L), TRUE)
7361+ test(1514.8, isRealReallyInt32(9L), FALSE) # b/c not double input
73627362
73637363# #1091
73647364options(datatable.prettyprint.char = 5L)
@@ -15137,19 +15137,19 @@ if (test_bit64) {
1513715137 output = "Coercing integer column x.int to type integer64 to match type of i.int64")
1513815138 test(2044.67, dt1[dt2, ..cols, on="doubleInt==int64", nomatch=0L, verbose=TRUE],
1513915139 ans,
15140- output = "Coercing double column x.doubleInt (which contains no fractions) to type integer64 to match type of i.int64")
15140+ output = "Coercing double column x.doubleInt (which has integer64 representation, e.g. no fractions) to type integer64 to match type of i.int64")
1514115141 test(2044.68, dt1[dt2, ..cols, on="realDouble==int64", nomatch=0L, verbose=TRUE],
15142- error="Incompatible join types: i.int64 is type integer64 but x.realDouble is type double and contains fractions ")
15142+ error="Incompatible join types: i.int64 is type integer64 but x.realDouble is type double and cannot be coerced to integer64 ")
1514315143 # int64 in x
1514415144 test(2044.69, dt1[dt2, ..cols, on="int64==int", nomatch=0L, verbose=TRUE],
1514515145 ans<-data.table(x.int=1:5, x.doubleInt=as.double(1:5), x.realDouble=c(0.5,1.0,1.5,2.0,2.5), x.int64=as.integer64(1:5),
1514615146 i.int=1:5, i.doubleInt=as.double(1:5), i.realDouble=c(0.5,1.0,1.5,2.0,2.5), i.int64=as.integer64(c(1:4, 3000000000))),
1514715147 output = "Coercing integer column i.int to type integer64 to match type of x.int64")
1514815148 test(2044.70, dt1[dt2, ..cols, on="int64==doubleInt", nomatch=0L, verbose=TRUE],
1514915149 ans,
15150- output = "Coercing double column i.doubleInt (which contains no fractions) to type integer64 to match type of x.int64")
15150+ output = "Coercing double column i.doubleInt (which has integer64 representation, e.g. no fractions) to type integer64 to match type of x.int64")
1515115151 test(2044.71, dt1[dt2, ..cols, on="int64==realDouble", nomatch=0L, verbose=TRUE],
15152- error="Incompatible join types: x.int64 is type integer64 but i.realDouble is type double and contains fractions ")
15152+ error="Incompatible join types: x.int64 is type integer64 but i.realDouble is type double and cannot be coerced to integer64 ")
1515315153}
1515415154# coercion of all-NA
1515515155dt1 = data.table(a=1, b=NA_character_)
0 commit comments