Changeset: 0440de59ef79 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0440de59ef79
Modified Files:
monetdb5/extras/rapi/converters.c
tools/embedded/Tests/lowlevel.R
Branch: embedded
Log Message:
need to make enough NA values
diffs (42 lines):
diff --git a/monetdb5/extras/rapi/converters.c
b/monetdb5/extras/rapi/converters.c
--- a/monetdb5/extras/rapi/converters.c
+++ b/monetdb5/extras/rapi/converters.c
@@ -58,10 +58,13 @@ static SEXP bat_to_sexp(BAT* b) {
SEXP varvalue = NULL;
// TODO: deal with SQL types (DECIMAL/DATE)
switch (ATOMstorage(getColumnType(b->T->type))) {
- case TYPE_void:
- varvalue = PROTECT(NEW_INTEGER(1));
- INTEGER_POINTER(varvalue)[0] = NA_INTEGER;
- break;
+ case TYPE_void: {
+ size_t i = 0;
+ varvalue = PROTECT(NEW_LOGICAL(BATcount(b)));
+ for (i = 0; i < BATcount(b); i++) {
+ LOGICAL_POINTER(varvalue)[i] = NA_LOGICAL;
+ }
+ } break;
case TYPE_bte:
BAT_TO_INTSXP(b, bte, varvalue, 0);
break;
diff --git a/tools/embedded/Tests/lowlevel.R b/tools/embedded/Tests/lowlevel.R
--- a/tools/embedded/Tests/lowlevel.R
+++ b/tools/embedded/Tests/lowlevel.R
@@ -129,10 +129,17 @@ test_that("inserting data", {
test_that("selecting null works", {
con <- monetdb_embedded_connect()
+
res <- monetdb_embedded_query(con, "SELECT NULL as nl")
expect_equal(nrow(res$tuples), 1)
expect_equal(ncol(res$tuples), 1)
expect_true(is.na(res$tuples$nl))
+
+ res <- monetdb_embedded_query(con, "SELECT NULL AS nl, name FROM
tables")
+ expect_true(nrow(res$tuples) > 1)
+ expect_equal(ncol(res$tuples), 2)
+ expect_true(all(is.na(res$tuples$nl)))
+
monetdb_embedded_disconnect(con)
})
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list