From 95d36e924cc193d4a075b9f7207515520f4fe9e0 Mon Sep 17 00:00:00 2001 From: Tim Cadman <41470917+timcadman@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:13:54 +0200 Subject: [PATCH 1/9] chore: bootstrap batch-5 from batch-4 --- .Rbuildignore | 1 + NAMESPACE | 2 + R/utils.R | 69 ++++++++ REFACTOR_GUIDE.md | 418 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 490 insertions(+) create mode 100644 R/utils.R create mode 100644 REFACTOR_GUIDE.md diff --git a/.Rbuildignore b/.Rbuildignore index 5fa08928..18ae4b93 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -23,3 +23,4 @@ ^\.circleci$ ^\.circleci/config\.yml$ ^\.github$ +^REFACTOR_GUIDE\.md$ diff --git a/NAMESPACE b/NAMESPACE index 8bdab82e..bd539a11 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -119,6 +119,8 @@ export(ds.var) export(ds.vectorCalc) import(DSI) import(data.table) +importFrom(DSI,datashield.connections_find) +importFrom(cli,cli_abort) importFrom(stats,as.formula) importFrom(stats,na.omit) importFrom(stats,ts) diff --git a/R/utils.R b/R/utils.R new file mode 100644 index 00000000..51ef63e2 --- /dev/null +++ b/R/utils.R @@ -0,0 +1,69 @@ +#' Retrieve datasources if not specified +#' +#' @param datasources An optional list of data sources. If not provided, the function will attempt +#' to find available data sources. +#' @importFrom DSI datashield.connections_find +#' @return A list of data sources. +#' @noRd +.get_datasources <- function(datasources) { + if (is.null(datasources)) { + datasources <- datashield.connections_find() + } + return(datasources) +} + +#' Verify that the provided data sources are of class 'DSConnection'. +#' +#' @param datasources A list of data sources. +#' @importFrom cli cli_abort +#' @noRd +.verify_datasources <- function(datasources) { + is_connection_class <- sapply(datasources, function(x) inherits(unlist(x), "DSConnection")) + if (!all(is_connection_class)) { + cli_abort("The 'datasources' were expected to be a list of DSConnection-class objects") + } +} + +#' Set and verify data sources. +#' +#' @param datasources An optional list of data sources. If not provided, the function will attempt +#' to find available data sources. +#' @return A list of verified data sources. +#' @noRd +.set_datasources <- function(datasources) { + datasources <- .get_datasources(datasources) + .verify_datasources(datasources) + return(datasources) +} + +#' Check cross-study class consistency from a list of server aggregate results +#' +#' Batch-refactored server functions return a list per study that includes a +#' `class` field. This helper verifies that the class field is identical across +#' all studies and aborts if not. +#' +#' @param results A named list of server-side aggregate results, one per study, +#' each containing a `class` element. +#' @importFrom cli cli_abort +#' @return Invisibly returns `NULL`. Called for its side effect (error checking). +#' @noRd +.checkClassConsistency <- function(results) { + classes <- lapply(results, function(r) r$class) + if (length(unique(lapply(classes, sort))) > 1) { + cli_abort("The input object is not of the same class in all studies!") + } +} + +#' Check That a Data Frame Name Is Provided +#' +#' Internal helper that checks whether a data frame or matrix object +#' has been provided. If `NULL`, it aborts with a user-friendly error. +#' +#' @param df A data.frame or matrix. +#' @return Invisibly returns `NULL`. Called for its side effect (error checking). +#' @noRd +.check_df_name_provided <- function(df) { + if(is.null(df)){ + cli_abort("Please provide the name of a data.frame or matrix!", call.=FALSE) + } +} diff --git a/REFACTOR_GUIDE.md b/REFACTOR_GUIDE.md new file mode 100644 index 00000000..0380c652 --- /dev/null +++ b/REFACTOR_GUIDE.md @@ -0,0 +1,418 @@ +# Refactoring Plan: dsBase & dsBaseClient Function Pairs + +> **Action:** Replace `/Users/tcadman/github-repos/ds-core/dsBaseClient/REFACTOR_GUIDE.md` with this plan content so it's accessible across branches. + +## Context + +The `ds.colnames` / `colnamesDS` pair has been refactored as a reference implementation. The pattern shifts server-state validation (object existence, type checking) from client to server, reducing network round trips and centralizing validation where data lives. This needs to be applied across all remaining function pairs in both packages. + +The refactored `ds.colnames` branch (`v7.0-dev-colnames`) also introduces shared helpers: +- **Client:** `R/utils.R` with `.set_datasources()`, `.check_df_name_provided()` +- **Server:** `R/utils.R` with `.loadServersideObject()`, `.checkClass()` + +## Relationship Between Packages + +- **dsBaseClient** (`/Users/tcadman/github-repos/ds-core/dsBaseClient/R/`) — Client functions (`ds.functionName`) that validate inputs and dispatch calls to server +- **dsBase** (`/Users/tcadman/github-repos/ds-core/dsBase/R/`) — Server functions (`functionNameDS`) that execute on the data + +## What Changes Per Function Pair + +### Client-side (dsBaseClient) + +1. **Replace datasource boilerplate** with `datasources <- .set_datasources(datasources)` + - Removes: `datashield.connections_find()` + DSConnection class check (~8 lines) + +2. **Remove `isDefined()` calls** — server handles via `.loadServersideObject()` + +3. **Remove `checkClass()` calls and subsequent type guards** — server handles via `.checkClass()` + +4. **Add `classConsistencyCheck` parameter** — For any function where the input accepts more than one permitted class, add a `classConsistencyCheck` parameter. The server function returns `class = class(obj)` in its result list; the client checks consistency via `.checkClassConsistency()` when the parameter is TRUE, then strips the `class` field before returning to the user. Rules for the default value: + - **TRUE** when permitted classes include genuinely different types (e.g. data.frame + matrix, factor + character + integer) + - **FALSE** when permitted classes are only `numeric` and `integer` (these are effectively interchangeable) + - **No parameter** when only one class is permitted (e.g. `ds.levels` only permits factor — consistency is guaranteed by `.checkClass()`) + + **Verification:** after refactoring, inspect every `return()` in the client function — `class` (or `class.x` / `class.index` for multi-input functions) must not appear as a named element of the returned list. Stripping can be explicit (`r$class <- NULL`) or implicit (building the return from a specific subset of fields), but the absence of `class` in the final returned value must be visible at the `return()` site. + +5. **Remove `ValidityMessage`** — Server functions that returned `ValidityMessage = "VALID ANALYSIS"` should remove it. Failures should call `stop()` instead of returning a failure message. Remove `ValidityMessage` from client returns too. This is a major release so API changes are acceptable. + +6. **Remove `isAssigned()` calls** — no longer verify object creation client-side + +7. **Remove MODULE 5 boilerplate** — the ~40-80 line "CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED" block + +8. **Remove `checks` parameter** — functions like `ds.dim` and `ds.length` have a `checks` parameter that gates `isDefined()`/`checkClass()` calls. Once those calls are removed, the parameter serves no purpose. Remove it from the function signature and delete the associated conditional block. + +9. **Replace per-study loops with single aggregate calls** — some functions (e.g. `ds.isNA`) loop over datasources one at a time (`datashield.aggregate(datasources[i], ...)`). Since `datashield.aggregate` already supports multiple datasources and returns a named list, replace these loops with a single call and process results client-side. This collapses N sequential round trips into 1 parallel call. + +10. **Keep**: null-input checks (or replace with `.check_df_name_provided()`), default `newobj` naming, the actual server call dispatch, any pure client-side logic + +### Server-side (dsBase) + +Two refactor patterns, depending on how the server function currently receives its input. Pick the one that matches. + +**Pattern A — function already receives a string name and uses `eval(parse())` internally.** + +1. Replace `eval(parse(text=x), envir=parent.frame())` with `.loadServersideObject(x)`. +2. Add `.checkClass(obj = x.val, obj_name = x, permitted_classes = …)` right after loading, where the client previously enforced type constraints. +3. Keep all computation, disclosure controls, privacy checks untouched. + +**Pattern B — function currently receives a resolved R object via dispatch-layer evaluation (`as.symbol()` or `call()` in the client).** + +1. Rename the function parameter from its descriptive body-variable name (e.g. `xvect`, `X`) to a simple string-name parameter (e.g. `x`). Do **not** rename the body-variable usages. +2. At the top of the body, load into the original body-variable name: `xvect <- .loadServersideObject(x)`. +3. Add `.checkClass(obj = xvect, obj_name = x, permitted_classes = …)`. +4. On the client, switch dispatch from `as.symbol(paste0("funcDS(", x, ")"))` to `call("funcDS", x)` so the string is passed through instead of being evaluated. +5. Update the `@param` roxygen line to describe the string-name form. + +Both patterns leave the function body untouched — **no renaming inside the body, no restyling.** Minimise diff. + +### Returning class from the server + +Some client functions previously called `checkClass()` purely to drive **client-side routing** (e.g. decide which server function to dispatch, or which output format to use, or to warn about an argument being ignored). That's a separate network round trip solely to discover the class of the input object — redundant, because the server that runs the aggregate already has the object in hand. + +The batch 2 precedent (`dimDS`, `lengthDS`) is: **return the class as a field of the aggregate result**. For example: + +```r +lengthDS <- function(x){ + x.val <- .loadServersideObject(x) + .checkClass(obj = x.val, obj_name = x, permitted_classes = c(...)) + list(length = length(x.val), class = class(x.val)) +} +``` + +The client then reads `result$class` for any post-hoc routing, consistency check, or warning — no extra `checkClass()` call needed. + +Cross-study class consistency is checked via the shared helper `.checkClassConsistency(results)` (in `dsBaseClient/R/utils.R`), which aborts if the `class` field differs across studies. Always use this helper instead of inlining the check. + +**When to apply this:** +- The client was previously calling `checkClass()` to select output format, format warnings, or check class consistency across studies. +- The class information can be derived from the aggregate's input. + +**When not to apply this:** +- The client needs the class *before* choosing which server function to call (true composite dispatchers like `ds.summary`, which branch to completely different server functions per class). These still need a pre-call class lookup, for example via `call("classDS", x)` as a single lightweight aggregate. +- The class is genuinely irrelevant to the client after the call. + +Prefer this pattern over keeping a client-side `checkClass()` call whenever a client function currently does both a `checkClass()` and an aggregate call on the same object. + +### Minimal-diff rule + +Refactors should change as little as possible. Do not rename variables, restyle comments, reformat whitespace, or bundle unrelated cleanups. If a variable rename is stylistically tempting but not strictly required by the refactor, skip it. If the user pushes back on a change, stop and ask — do not iterate with more edits on the same file. + +### Do not change existing behaviour + +The refactor must not alter which input types a function accepts or what it returns (beyond adding `class` to the return list). If the original function accepted data.frames, the refactored version must too. Check previous behaviour before setting permitted classes in `.checkClass()`. + +This extends to **test coverage**. If a refactor removes output fields that tests asserted on, the refactor is not done until equivalent coverage is added. Do not merely delete assertions to make tests pass — that silently reduces what the suite verifies. The change is reviewable by diffing `test-smk-*.R` against the base branch: every removed `expect_*` must be either (a) redundant because the same behaviour is covered elsewhere in the same file, or (b) replaced with an assertion covering the same server-side behaviour. + +### Adding new parameters to existing exported functions + +When adding a parameter to an already-released function (e.g. `classConsistencyCheck`, a new behaviour flag), **place it after all existing named parameters** — never in the middle of the signature. Inserting a parameter mid-signature silently breaks every caller that used positional argument order for anything to its right. Append it to the end (after `datasources=NULL` is acceptable even though `datasources` is conventionally last), and document the default value in `@param`. + +### Tests + +**Server-side unit tests** (new `test-smk-functionNameDS.R` in dsBase): +- Happy path: call with valid input, assert correct output +- Unhappy: nonexistent object → `expect_error(..., "does not exist")` +- Unhappy: wrong type → `expect_error(..., "must be of type")` (only where `.checkClass()` is used) + +**Client-side end-to-end tests** (update existing `test-smk-ds.functionName.R` in dsBaseClient): +- Happy path: existing tests should still pass +- Unhappy: nonexistent object → `expect_error(..., "DataSHIELD errors")` +- Unhappy: wrong type → `expect_error(..., "DataSHIELD errors")` (where type was previously checked client-side) +- Update any tests that expected client-side error messages to expect server-originated errors +- **When MODULE 5 assertions are removed, add comparable replacements.** The old MODULE 5 block returned `$is.object.created` and `$validity.check` messages asserting that `newobj` existed on every server. When those assertions are stripped, add equivalent checks inside the same `test_that` block that verify the object was created on all sources — e.g. `ds_expect_variables(c(""))` or `expect_no_error(ds.class(""))`. Relying on the shutdown-block `ds_expect_variables()` alone is not sufficient because it can't pinpoint which test created the missing object. + +**Design decisions:** +- Functions accepting any class: use `.loadServersideObject()` only, no `.checkClass()` +- Client tests must include unhappy paths testing server error propagation +- Start with Batch 1 (simple coercions) + +### Authorship + +After the refactor commits for a batch have landed, add `Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands` as a new `@author` roxygen line in every R/ file touched on each branch (dsBase and dsBaseClient), matching the existing `@author` line(s) below: + +``` +#' @author +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands +``` + +Skip files that have no existing `@author` line (e.g. `R/utils.R`). Do this as a separate trailing commit per repo with message `docs: updated authorship`, not bundled with the refactor commits. + +## Excluded Functions + +**Deprecated (12):** ds.look, ds.meanByClass, ds.message, ds.recodeLevels, ds.setDefaultOpals, ds.subset, ds.subsetByClass, ds.table1D, ds.table2D, ds.vectorCalc, ds.listOpals, ds.listServersideFunctions + +**Already done:** ds.colnames / colnamesDS + +**Client-only (no server pair):** checkClass.R, isDefined.R, isAssigned.R, extract.R, glmChecks.R, getPooledMean.R, getPooledVar.R, helpers (meanByClassHelper*, subsetHelper, logical2int, colPercent, rowPercent) + +## Batches + +### Batch 1 — Simple Type Coercions (11 pairs) +Single input → single output, straightforward `eval(parse())` replacement. + +**TODO:** Add `classConsistencyCheck` parameter to batch-1 functions with >1 permitted class. For numeric/integer-only functions (ds.abs, ds.exp, ds.log, ds.sqrt) default to FALSE; for others (ds.asDataMatrix: data.frame/matrix, ds.asLogical: numeric/integer/character/matrix) default to TRUE. Server functions need to return class in results to support this. dsBase batch-1 is already merged — server changes need a new branch or inclusion in a later batch. + +**TODO:** `test-smk-asLogicalDS.R` in dsBase is missing a wrong-type test case (e.g. passing a list). Other `.checkClass()` functions (absDS, expDS, logDS, sqrtDS) have this test. dsBase batch-1 is merged — fix in a follow-up. + +| Client | Server | Permitted classes | Notes | +|--------|--------|-------------------|-------| +| ds.abs | absDS | numeric, integer | | +| ds.asCharacter | asCharacterDS | * | | +| ds.asDataMatrix | asDataMatrixDS | data.frame, matrix | | +| ds.asInteger | asIntegerDS | * | | +| ds.asList | asListDS | * | **AGGREGATE** (not assign); server takes 2 params (x.name, newobj) | +| ds.asLogical | asLogicalDS | * | Server has existing type validation (numeric/integer/character/matrix) — preserve as `.checkClass()` | +| ds.asMatrix | asMatrixDS | * | | +| ds.asNumeric | asNumericDS | * | Server has complex factor/character conversion logic — preserve | +| ds.exp | **NEW: expDS** | numeric, integer | No server DS function exists — client currently calls native `exp()` via `as.symbol()`. Must create `expDS.R` | +| ds.log | **NEW: logDS** | numeric, integer | No server DS function exists — client currently calls native `log()` via `as.symbol()`. Must create `logDS.R`. Has `base` parameter | +| ds.sqrt | sqrtDS | numeric, integer | | + +`*` = accept any class — only use `.loadServersideObject()`, no `.checkClass()` needed + +**Batch 1 sub-patterns discovered:** +- **Math ops (abs, exp, log, sqrt):** Client uses `checkClass()` + `isAssigned()`, no MODULE 5 +- **Type conversions (asCharacter, asDataMatrix, asInteger, asLogical, asMatrix, asNumeric):** Client uses `isDefined()` + MODULE 5 block (except asList which has neither) +- **asList is unique:** Uses `datashield.aggregate` instead of `datashield.assign` + +### Batch 2 — Simple Aggregations (10 pairs) +Return results to client, no server-side assignment. + +| Client | Server | Permitted classes | +|--------|--------|-------------------| +| ds.class | classDS | * | +| ds.dim | dimDS | data.frame, matrix | +| ds.length | lengthDS | character, factor, integer, logical, numeric, list | +| ds.names | namesDS | * | +| ds.isNA | isNaDS | character, factor, integer, logical, numeric, data.frame, matrix | +| ds.numNA | numNaDS | * | +| ds.ls | lsDS | (no object input) | +| ds.completeCases | completeCasesDS | * (no .checkClass — server handles via own branching) | +| ds.levels | levelsDS | factor | +| ds.unique | uniqueDS | * | + +**Deferred from Batch 2:** ds.isValid / isValidDS — `isValidDS` is used as an internal disclosure-control helper by `replaceNaDS` (Batch 4), `quantileMeanDS` (Batch 3), and `rowColCalcDS` (Batch 10), all passing objects directly. Cannot change `isValidDS` signature until those callers are refactored. Refactor ds.isValid/isValidDS when the last internal caller is refactored (see Batch 10 notes). + +**Batch 2 sub-patterns:** +- **Standard eval(parse()) functions (classDS, dimDS, lengthDS, namesDS, lsDS, completeCasesDS, uniqueDS):** Server uses `eval(parse(text=x), envir=parent.frame())` — replace with `.loadServersideObject()` +- **Dispatch-layer resolution functions (isNaDS, numNaDS, levelsDS):** Server receives resolved R objects via client `as.symbol()`/`call()` dispatch — change server to accept string name + `.loadServersideObject()`, change client to `call("funcDS", x)` +- **Assign functions (completeCases, unique):** Use `datashield.assign` not `datashield.aggregate` — still remove MODULE 5 / isAssigned +- **Client-side processing to preserve:** ds.dim and ds.length have `type` parameter with alias normalization and cross-study pooling; ds.isNA has per-study loop with conditional messaging; ds.ls has wildcard `*` → `_:A:_` escaping +- **Pooling functions (dimDS, lengthDS):** Return `list(dim=..., class=...)` / `list(length=..., class=...)` so client can check cross-study class consistency before pooling results + +### Batch 3 — Statistics (10 pairs) +Aggregate functions returning computed values. Some have multi-step server calls. + +| Client | Server | Notes | +|--------|--------|-------| +| ds.mean | meanDS | has disclosure controls | +| ds.var | varDS | has disclosure controls | +| ds.cor | corDS | two inputs | +| ds.corTest | corTestDS | two inputs | +| ds.cov | covDS | two inputs | +| ds.kurtosis | kurtosisDS1/DS2 | multi-step | +| ds.skewness | skewnessDS1/DS2 | multi-step | +| ds.quantileMean | quantileMeanDS | aggregate | +| ds.meanSdGp | meanSdGpDS | aggregate | +| ds.summary | (check server) | aggregate | + +### Batch 4 — Data Manipulation / Assign (15 pairs) +Create/modify server objects. Many have MODULE 5 blocks. + +| Client | Server | Notes | +|--------|--------|-------| +| ds.Boole | BooleDS | assign, MODULE 5 | +| ds.c | cDS | multi-input assign | +| ds.cbind | cbindDS | multi-input, permissive check | +| ds.rbind | rbindDS | multi-input | +| ds.dataFrame | dataFrameDS | multi-input, complex | +| ds.dataFrameSort | dataFrameSortDS | assign, MODULE 5 | +| ds.dataFrameSubset | dataFrameSubsetDS1/DS2 | multi-step | +| ds.dataFrameFill | dataFrameFillDS | assign | +| ds.list | listDS | assign | +| ds.unList | unListDS | assign | +| ds.merge | mergeDS | assign, MODULE 5 | +| ds.rep | repDS | assign | +| ds.seq | seqDS | assign | +| ds.replaceNA | replaceNaDS | assign, per-source loop | +| ds.recodeValues | recodeValuesDS | assign | + +### Batch 5 — Matrix Operations (8 pairs) + +| Client | Server | +|--------|--------| +| ds.matrix | matrixDS | +| ds.matrixDet | matrixDetDS1/DS2 | +| ds.matrixDet.report | matrixDetDS2 | +| ds.matrixDiag | matrixDiagDS | +| ds.matrixDimnames | matrixDimnamesDS | +| ds.matrixInvert | matrixInvertDS | +| ds.matrixMult | matrixMultDS | +| ds.matrixTranspose | matrixTransposeDS | + +### Batch 6 — Factor & Recoding (5 pairs) + +| Client | Server | +|--------|--------| +| ds.asFactor | asFactorDS1/DS2 | +| ds.asFactorSimple | asFactorSimpleDS | +| ds.changeRefGroup | changeRefGroupDS | +| ds.reShape | reShapeDS | +| ds.dmtC2S | dmtC2SDS | + +### Batch 7 — Modelling (8 pairs) +Most complex. Multiple server calls, complex validation logic. + +| Client | Server | +|--------|--------| +| ds.glm | glmDS1/DS2 | +| ds.glmSLMA | glmSLMADS1/DS2/assign | +| ds.glmPredict | glmPredictDS.ag/as | +| ds.glmSummary | glmSummaryDS.ag/as | +| ds.glmerSLMA | glmerSLMADS2/assign | +| ds.lmerSLMA | lmerSLMADS2/assign | +| ds.gamlss | gamlssDS | +| ds.mice | miceDS | + +### Batch 8 — Random Generation & Sampling (6 pairs) + +| Client | Server | +|--------|--------| +| ds.rBinom | rBinomDS | +| ds.rNorm | rNormDS | +| ds.rPois | rPoisDS | +| ds.rUnif | rUnifDS | +| ds.sample | sampleDS | +| ds.setSeed | setSeedDS | + +### Batch 9 — Plotting & Visualization (7 pairs) + +| Client | Server | +|--------|--------| +| ds.histogram | histogramDS1/DS2 | +| ds.heatmapPlot | heatmapPlotDS | +| ds.contourPlot | (check server name) | +| ds.densityGrid | densityGridDS | +| ds.scatterPlot | scatterPlotDS | +| ds.boxPlot | (check server) | +| ds.boxPlotGG | boxPlotGGDS | + +### Batch 10 — Splines, Tables, Misc (14 pairs) + +| Client | Server | +|--------|--------| +| ds.elspline | elsplineDS | +| ds.lspline | lsplineDS | +| ds.ns | nsDS | +| ds.qlspline | qlsplineDS | +| ds.table | tableDS/tableDS.assign/tableDS2 | +| ds.tapply | tapplyDS | +| ds.tapply.assign | tapplyDS.assign | +| ds.rowColCalc | rowColCalcDS | +| ds.make | (check server) | +| ds.assign | (check server) | +| ds.metadata | metadataDS | +| ds.getWGSR | getWGSRDS | +| ds.lexis | lexisDS1/DS2/DS3 | +| ds.hetcor | hetcorDS | + +**Batch 10 dependency:** `rowColCalcDS` calls `isValidDS(result)` internally as a disclosure check. When refactoring `rowColCalcDS`, replace this with direct disclosure logic or `.loadServersideObject()` + `.checkClass()`. Once done, also refactor `ds.isValid` / `isValidDS` (deferred from Batch 2). Similarly, `replaceNaDS` (Batch 4) and `quantileMeanDS` (Batch 3) call `isValidDS()` internally — refactor those callers first before changing `isValidDS`'s signature. + +## Per-Batch Workflow + +**Important:** dsBase and dsBaseClient are separate git repos. Changes must be committed and tested in the correct order since the client depends on the server package being installed. + +### Step 0 — Branch bootstrap + +When creating a new batch branch (in either repo) from `origin/v7.0-dev`: + +1. **dsBaseClient:** copy `R/utils.R` from the most recently refactored client branch (e.g. `origin/refactor/perf-batch-4`). `origin/v7.0-dev` on the client does not yet contain it — it only enters `v7.0-dev` once the batch-1 or batch-2 client PR merges. +2. **dsBaseClient:** copy `REFACTOR_GUIDE.md` from the same branch, and add `^REFACTOR_GUIDE\.md$` to `.Rbuildignore` if not already there. This keeps the guide alongside the code being refactored so rules added in later batches are visible to everyone. +3. **dsBase:** no bootstrap copy needed — `R/utils.R` with `.loadServersideObject` / `.checkClass` is already in `origin/v7.0-dev` (merged with batch-1). + +Commit the bootstrap separately (message: `chore: bootstrap batch-N from batch-M`) before starting the refactor work. + +### Step 1 — Server-side (dsBase repo) +1. Create feature branch from `v7.0-dev` in dsBase +2. Refactor server functions: + - Replace `eval(parse())` → `.loadServersideObject()` + - Add `.checkClass()` where the client had type guards +3. Write server-side unit tests (`test-smk-functionNameDS.R`) with happy + unhappy paths +4. Run `devtools::check(args = '--no-tests')` and `devtools::test()` in dsBase +5. Build package: `devtools::build()` + +### Step 2 — Install refactored dsBase on Armadillo +6. Ensure `inst/DATASHIELD` has `default.datashield.privacyControlLevel="permissive"` before building. **Must be the literal string `"permissive"`** — other values like `"banana"` will not work for all functions (e.g. `levelsDS` checks for `'permissive'` explicitly). +7. Build package: `devtools::build()` in dsBase +8. Copy the built tar to dsBaseClient as `dsBase_7.0.0-permissive.tar.gz` (this is the filename the CI pipeline references in `armadillo_azure-pipelines.yml`) +9. Install on local Armadillo: `armadillo.login("http://localhost:8080")` then `armadillo.install_packages(paths = "", profile = "default")` + +### Step 3 — Client-side (dsBaseClient repo) +7. Create feature branch from `v7.0-dev` in dsBaseClient +8. Ensure `R/utils.R` exists (copy from `v7.0-dev-colnames` branch if needed) +9. Refactor client functions: + - Replace datasource boilerplate → `.set_datasources()` + - Remove `isDefined()`, `checkClass()`, `isAssigned()` calls + - Remove MODULE 5 blocks + - Replace null-input checks with `.check_df_name_provided()` where applicable +10. Update/add client end-to-end tests with happy + unhappy paths +11. Run `devtools::check(args = '--no-tests')` in dsBaseClient +12. Run tests against Armadillo, **not DSLite**. Set the driver to `"ArmadilloDriver"` in `tests/testthat/connection_to_datasets/login_details.R` (default is `"DSLiteDriver"`). DSLite uses whatever dsBase is installed locally in R, which may not match the refactored version on Armadillo. Run `devtools::test(filter = "smk-|disc|arg")` for affected functions (requires refactored dsBase to be installed on Armadillo) + +### Step 4 — Verify +13. Run full test suite to check no regressions +14. Run perf tests at 30 seconds (default): `devtools::test(filter = "perf-")` +15. Compare perf results against the v7.0-dev branch baseline to detect any regressions from the refactoring + +### Step 5 — Pre-merge audit (mandatory) + +Before marking a batch complete: + +1. **Diff every touched `test-smk-*.R` / `test-arg-*.R` / `test-disc-*.R` against the branch base.** For each removed `expect_*` assertion, confirm it falls into one of: + - (a) redundant — the same behaviour is covered by another assertion still present in the same file; + - (b) replaced — a new assertion was added that covers the same server-side behaviour (e.g. `ds_expect_variables` replacing `$is.object.created`, or `ds.summary`/`ds.class` on the newobj). + + Any removed assertion that doesn't fall into (a) or (b) is a coverage loss that must be restored before merge. + +2. **Inspect every `test_that(…)` block touched by the refactor.** Each block must still contain at least one `expect_*` assertion after the refactor. Blocks stripped to just the function call are not acceptable — add `ds_expect_variables`, `expect_no_error`, or a downstream property check. + +3. **Diff every signature of every exported function touched.** Confirm no parameter was added in the middle of the signature; new parameters must be at the end (see "Adding new parameters to existing exported functions" above). + +4. **Confirm docs match signature.** `@param` blocks present for every parameter, no stale `@param` for removed arguments, `@return` not promising MODULE 5 output fields. + +5. **Grep for residual patterns that should have been removed:** `isDefined(`, `isAssigned(`, `CLIENTSIDE MODULE`, `testObjExistsDS`, `is.object.created`, `validity.check`, `studyside.messages` in source files (acceptable in test files only if the MODULE 5 pattern is being deliberately preserved with a replacement). + +## Key Files + +### Reference implementation +- Client refactored: `git show v7.0-dev-colnames:R/ds.colnames.R` +- Server refactored: `/Users/tcadman/github-repos/ds-core/dsBase/R/colnamesDS.R` +- Client utils: `git show v7.0-dev-colnames:R/utils.R` +- Server utils: `/Users/tcadman/github-repos/ds-core/dsBase/R/utils.R` +- Server tests: `/Users/tcadman/github-repos/ds-core/dsBase/tests/testthat/test-smk-colnamesDS.R` +- Client tests: `/Users/tcadman/github-repos/ds-core/dsBaseClient/tests/testthat/test-smk-ds.colnames.R` + +### Guides +- `/Users/tcadman/github-repos/ds-core/dsBaseClient/REFACTOR_GUIDE.md` +- `/Users/tcadman/github-repos/ds-core/dsBase/.github/pull_request_template` + +## Verification + +For each batch: +1. Run server-side unit tests: `cd dsBase && devtools::test(filter = "functionNameDS")` +2. Run client-side smoke tests: `cd dsBaseClient && devtools::test(filter = "smk-ds.functionName")` +3. Run `devtools::check(args = '--no-tests')` on both packages +4. Run full test suite: `devtools::test(filter = "smk-|disc|arg")` to check no regressions +5. Run perf tests: `PERF_DURATION_SEC=2 devtools::test(filter = "perf-")` to verify no performance regression + +## Follow-up: refactor client-side `checkClass` + +The client-side helper `checkClass()` currently does two jobs in one: (a) fetches the class of a server-side object and (b) checks the class is consistent across studies. After this refactor, the first job is redundant (the server returns `class` in aggregate results), but the second is still needed by composite dispatchers (`ds.summary` and similar). + +Planned cleanup (defer to a dedicated branch): + +- Rename `checkClass` → `.checkClass` to mark it internal (matches `.checkClassConsistency`, `.set_datasources`). +- Split its responsibilities: one helper that fetches class for pre-call routing, one that checks cross-study consistency on a set of classes. +- Update the remaining callers (`ds.summary` and any others still holding a client-side class pre-fetch). + +Not done as part of any single batch because the rename touches callers outside that batch's function set and would break functions not yet refactored. Schedule once all batches are merged — the rename then becomes one small, isolated commit. From d1cf587ef0d33ed7fdccd1aa41df5f04c5d05e4a Mon Sep 17 00:00:00 2001 From: Tim Cadman <41470917+timcadman@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:14:07 +0200 Subject: [PATCH 2/9] refactor: batch-5 matrix client functions --- R/ds.matrix.R | 96 +----------------- R/ds.matrixDet.R | 101 +------------------ R/ds.matrixDet.report.R | 11 +- R/ds.matrixDiag.R | 96 +----------------- R/ds.matrixDimnames.R | 95 +---------------- R/ds.matrixInvert.R | 96 +----------------- R/ds.matrixMult.R | 96 +----------------- R/ds.matrixTranspose.R | 96 +----------------- man/ds.matrix.Rd | 7 +- man/ds.matrixDet.Rd | 9 +- man/ds.matrixDet.report.Rd | 2 + man/ds.matrixDiag.Rd | 7 +- man/ds.matrixDimnames.Rd | 7 +- man/ds.matrixInvert.Rd | 7 +- man/ds.matrixMult.Rd | 7 +- man/ds.matrixTranspose.Rd | 7 +- tests/testthat/test-smk-ds.matrix.R | 6 +- tests/testthat/test-smk-ds.matrixDet.R | 4 +- tests/testthat/test-smk-ds.matrixDiag.R | 8 +- tests/testthat/test-smk-ds.matrixDimnames.R | 4 +- tests/testthat/test-smk-ds.matrixInvert.R | 4 +- tests/testthat/test-smk-ds.matrixMult.R | 4 +- tests/testthat/test-smk-ds.matrixTranspose.R | 6 +- 23 files changed, 58 insertions(+), 718 deletions(-) diff --git a/R/ds.matrix.R b/R/ds.matrix.R index 69ad3a72..5a0ed315 100644 --- a/R/ds.matrix.R +++ b/R/ds.matrix.R @@ -48,11 +48,9 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrix} returns the created matrix which is written on the server-side. -#' In addition, two validity messages are returned -#' indicating whether the new matrix has been created in each data source and if so whether -#' it is in a valid form. +#' @return \code{ds.matrix} returns the created matrix which is written on the server-side. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -147,15 +145,7 @@ ds.matrix <- function(mdata = NA, from="clientside.scalar", nrows.scalar=NULL, ncols.scalar=NULL, byrow = FALSE, dimnames = NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if a value has been provided for mdata if(is.null(mdata)){ @@ -208,85 +198,5 @@ ds.matrix <- function(mdata = NA, from="clientside.scalar", nrows.scalar=NULL, n -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrix diff --git a/R/ds.matrixDet.R b/R/ds.matrixDet.R index 5fcd81a5..2f4d4960 100644 --- a/R/ds.matrixDet.R +++ b/R/ds.matrixDet.R @@ -16,12 +16,10 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrixDet} returns the determinant of an existing matrix on the server-side. -#' The created new object is stored on the server-side. -#' Also, two validity messages are returned -#' indicating whether the matrix has been created in each data source and if so whether -#' it is in a valid form. +#' @return \code{ds.matrixDet} returns the determinant of an existing matrix on the server-side. +#' The created new object is stored on the server-side. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -83,23 +81,12 @@ #' ds.matrixDet<-function(M1=NULL, newobj=NULL, logarithm=FALSE, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ return("Error: Please provide the name of the matrix representing M1") } - - # check if the input object is defined in all the studies - isDefined(datasources, M1) # if no value or invalid value specified for logarithm, then specify a default if(is.null(logarithm)){ @@ -119,85 +106,5 @@ ds.matrixDet<-function(M1=NULL, newobj=NULL, logarithm=FALSE, datasources=NULL){ calltext <- call("matrixDetDS2", M1, logarithm) DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORRECTLY MODULE # -############################################################################################################# - } #ds.matrixDet diff --git a/R/ds.matrixDet.report.R b/R/ds.matrixDet.report.R index be21aaa7..4d914d5c 100644 --- a/R/ds.matrixDet.report.R +++ b/R/ds.matrixDet.report.R @@ -18,6 +18,7 @@ #' @return \code{ds.matrixDet.report} returns to the client-side #' the determinant of a matrix that is stored on the server-side. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -76,15 +77,7 @@ #' ds.matrixDet.report<-function(M1=NULL, logarithm=FALSE, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ diff --git a/R/ds.matrixDiag.R b/R/ds.matrixDiag.R index 1ea1341a..7b78d9ba 100644 --- a/R/ds.matrixDiag.R +++ b/R/ds.matrixDiag.R @@ -56,11 +56,9 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrixDiag} returns to the server-side the square matrix diagonal. -#' Also, two validity messages are returned -#' indicating whether the new object has been created in each data source and if so whether -#' it is in a valid form. +#' @return \code{ds.matrixDiag} returns to the server-side the square matrix diagonal. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -177,15 +175,7 @@ #' ds.matrixDiag<-function(x1=NULL, aim=NULL, nrows.scalar=NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if a value has been provided for x1 if(is.null(x1)){ @@ -235,85 +225,5 @@ ds.matrixDiag<-function(x1=NULL, aim=NULL, nrows.scalar=NULL, newobj=NULL, datas DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrixDiag diff --git a/R/ds.matrixDimnames.R b/R/ds.matrixDimnames.R index 6f4a37ea..be7cb169 100644 --- a/R/ds.matrixDimnames.R +++ b/R/ds.matrixDimnames.R @@ -15,11 +15,9 @@ #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. #' @return \code{ds.matrixDimnames} returns to the server-side -#' the matrix with specified row and column names. -#' Also, two validity messages are returned to the client-side -#' indicating the new object that has been created in each data source and if so whether -#' it is in a valid form. +#' the matrix with specified row and column names. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -84,15 +82,8 @@ #' @export ds.matrixDimnames<-function(M1=NULL, dimnames=NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ @@ -110,85 +101,5 @@ ds.matrixDimnames<-function(M1=NULL, dimnames=NULL, newobj=NULL, datasources=NUL calltext <- call("matrixDimnamesDS", M1, dimnames) DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrixDimnames diff --git a/R/ds.matrixInvert.R b/R/ds.matrixInvert.R index 8cc3c447..d92591c4 100644 --- a/R/ds.matrixInvert.R +++ b/R/ds.matrixInvert.R @@ -12,11 +12,9 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrixInvert} returns to the server-side the inverts square matrix. -#' Also, two validity messages are returned to the client-side -#' indicating whether the new object has been created in each data source and if so whether -#' it is in a valid form. +#' @return \code{ds.matrixInvert} returns to the server-side the inverts square matrix. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -81,15 +79,7 @@ #' ds.matrixInvert<-function(M1=NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ @@ -105,85 +95,5 @@ ds.matrixInvert<-function(M1=NULL, newobj=NULL, datasources=NULL){ calltext <- call("matrixInvertDS", M1) DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrixInvert diff --git a/R/ds.matrixMult.R b/R/ds.matrixMult.R index cf5349fe..35e9d711 100644 --- a/R/ds.matrixMult.R +++ b/R/ds.matrixMult.R @@ -15,12 +15,10 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrixMult} returns to the server-side +#' @return \code{ds.matrixMult} returns to the server-side #' the result of the two matrix multiplication. -#' Also, two validity messages are returned to the client-side -#' indicating whether the new object has been created in each data source and if so whether -#' it is in a valid form. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' #' @examples #' \dontrun{ @@ -96,15 +94,7 @@ #' ds.matrixMult<-function(M1=NULL, M2=NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ @@ -129,85 +119,5 @@ ds.matrixMult<-function(M1=NULL, M2=NULL, newobj=NULL, datasources=NULL){ calltext <- call("matrixMultDS", M1, M2) DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrixMult diff --git a/R/ds.matrixTranspose.R b/R/ds.matrixTranspose.R index bbd73a1a..4de06471 100644 --- a/R/ds.matrixTranspose.R +++ b/R/ds.matrixTranspose.R @@ -15,11 +15,9 @@ #' @param datasources a list of \code{\link[DSI]{DSConnection-class}} #' objects obtained after login. If the \code{datasources} argument is not specified #' the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}. -#' @return \code{ds.matrixTranspose} returns to the server-side the transpose matrix. -#' Also, two validity messages are returned to the client-side -#' indicating whether the new object has been created in each data source and if so whether -#' it is in a valid form. +#' @return \code{ds.matrixTranspose} returns to the server-side the transpose matrix. #' @author DataSHIELD Development Team +#' @author Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands #' @examples #' \dontrun{ #' @@ -84,15 +82,7 @@ #' ds.matrixTranspose<-function(M1=NULL, newobj=NULL, datasources=NULL){ - # look for DS connections - if(is.null(datasources)){ - datasources <- datashield.connections_find() - } - - # ensure datasources is a list of DSConnection-class - if(!(is.list(datasources) && all(unlist(lapply(datasources, function(d) {methods::is(d,"DSConnection")}))))){ - stop("The 'datasources' were expected to be a list of DSConnection-class objects", call.=FALSE) - } + datasources <- .set_datasources(datasources) # check if user has provided the name of matrix representing M1 if(is.null(M1)){ @@ -108,85 +98,5 @@ ds.matrixTranspose<-function(M1=NULL, newobj=NULL, datasources=NULL){ calltext <- call("matrixTransposeDS", M1) DSI::datashield.assign(datasources, newobj, calltext) -############################################################################################################# -#DataSHIELD CLIENTSIDE MODULE: CHECK KEY DATA OBJECTS SUCCESSFULLY CREATED # - # -#SET APPROPRIATE PARAMETERS FOR THIS PARTICULAR FUNCTION # -test.obj.name<-newobj # - # -#TRACER # -#return(test.obj.name) # -#} # - # - # -# CALL SEVERSIDE FUNCTION # -calltext <- call("testObjExistsDS", test.obj.name) # - # -object.info<-DSI::datashield.aggregate(datasources, calltext) # - # -# CHECK IN EACH SOURCE WHETHER OBJECT NAME EXISTS # -# AND WHETHER OBJECT PHYSICALLY EXISTS WITH A NON-NULL CLASS # -num.datasources<-length(object.info) # - # - # -obj.name.exists.in.all.sources<-TRUE # -obj.non.null.in.all.sources<-TRUE # - # -for(j in 1:num.datasources){ # - if(!object.info[[j]]$test.obj.exists){ # - obj.name.exists.in.all.sources<-FALSE # - } # - if(is.null(object.info[[j]]$test.obj.class) || ("ABSENT" %in% object.info[[j]]$test.obj.class)){ # - obj.non.null.in.all.sources<-FALSE # - } # - } # - # -if(obj.name.exists.in.all.sources && obj.non.null.in.all.sources){ # - # - return.message<- # - paste0("A data object <", test.obj.name, "> has been created in all specified data sources") # - # - # - }else{ # - # - return.message.1<- # - paste0("Error: A valid data object <", test.obj.name, "> does NOT exist in ALL specified data sources") # - # - return.message.2<- # - paste0("It is either ABSENT and/or has no valid content/class,see return.info above") # - # - return.message.3<- # - paste0("Please use ds.ls() to identify where missing") # - # - # - return.message<-list(return.message.1,return.message.2,return.message.3) # - # - } # - # - calltext <- call("messageDS", test.obj.name) # - studyside.message<-DSI::datashield.aggregate(datasources, calltext) # - # - no.errors<-TRUE # - for(nd in 1:num.datasources){ # - if(studyside.message[[nd]]!="ALL OK: there are no studysideMessage(s) on this datasource"){ # - no.errors<-FALSE # - } # - } # - # - # - if(no.errors){ # - validity.check<-paste0("<",test.obj.name, "> appears valid in all sources") # - return(list(is.object.created=return.message,validity.check=validity.check)) # - } # - # -if(!no.errors){ # - validity.check<-paste0("<",test.obj.name,"> invalid in at least one source. See studyside.messages:") # - return(list(is.object.created=return.message,validity.check=validity.check, # - studyside.messages=studyside.message)) # - } # - # -#END OF CHECK OBJECT CREATED CORECTLY MODULE # -############################################################################################################# - } #ds.matrixTranspose diff --git a/man/ds.matrix.Rd b/man/ds.matrix.Rd index d60a9183..c005e7ad 100644 --- a/man/ds.matrix.Rd +++ b/man/ds.matrix.Rd @@ -48,10 +48,7 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrix} returns the created matrix which is written on the server-side. -In addition, two validity messages are returned -indicating whether the new matrix has been created in each data source and if so whether -it is in a valid form. +\code{ds.matrix} returns the created matrix which is written on the server-side. } \description{ Creates a matrix on the server-side @@ -174,4 +171,6 @@ Server function called: \code{matrixDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixDet.Rd b/man/ds.matrixDet.Rd index e827e815..6870ae60 100644 --- a/man/ds.matrixDet.Rd +++ b/man/ds.matrixDet.Rd @@ -20,11 +20,8 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrixDet} returns the determinant of an existing matrix on the server-side. -The created new object is stored on the server-side. -Also, two validity messages are returned -indicating whether the matrix has been created in each data source and if so whether -it is in a valid form. +\code{ds.matrixDet} returns the determinant of an existing matrix on the server-side. +The created new object is stored on the server-side. } \description{ Calculates the determinant of a square matrix that is @@ -98,4 +95,6 @@ Server function called: \code{matrixDetDS2} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixDet.report.Rd b/man/ds.matrixDet.report.Rd index 0a5c021d..c9f039f0 100644 --- a/man/ds.matrixDet.report.Rd +++ b/man/ds.matrixDet.report.Rd @@ -90,4 +90,6 @@ Server function called: \code{matrixDetDS1} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixDiag.Rd b/man/ds.matrixDiag.Rd index 268e5148..ab9385f1 100644 --- a/man/ds.matrixDiag.Rd +++ b/man/ds.matrixDiag.Rd @@ -40,10 +40,7 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrixDiag} returns to the server-side the square matrix diagonal. -Also, two validity messages are returned -indicating whether the new object has been created in each data source and if so whether -it is in a valid form. +\code{ds.matrixDiag} returns to the server-side the square matrix diagonal. } \description{ Extracts the diagonal vector from a square matrix or @@ -200,4 +197,6 @@ Server function called: \code{matrixDiagDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixDimnames.Rd b/man/ds.matrixDimnames.Rd index af56f76a..86311432 100644 --- a/man/ds.matrixDimnames.Rd +++ b/man/ds.matrixDimnames.Rd @@ -28,10 +28,7 @@ the default set of connections will be used: see \code{\link[DSI]{datashield.con } \value{ \code{ds.matrixDimnames} returns to the server-side -the matrix with specified row and column names. -Also, two validity messages are returned to the client-side -indicating the new object that has been created in each data source and if so whether -it is in a valid form. +the matrix with specified row and column names. } \description{ Adds the row names, the column names or both to @@ -106,4 +103,6 @@ Server function called: \code{matrixDimnamesDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixInvert.Rd b/man/ds.matrixInvert.Rd index 842baee4..6159b4f3 100644 --- a/man/ds.matrixInvert.Rd +++ b/man/ds.matrixInvert.Rd @@ -18,10 +18,7 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrixInvert} returns to the server-side the inverts square matrix. -Also, two validity messages are returned to the client-side -indicating whether the new object has been created in each data source and if so whether -it is in a valid form. +\code{ds.matrixInvert} returns to the server-side the inverts square matrix. } \description{ Inverts a square matrix and writes the output to the server-side @@ -96,4 +93,6 @@ Server function called: \code{matrixInvertDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixMult.Rd b/man/ds.matrixMult.Rd index 136db26d..e43c83d4 100644 --- a/man/ds.matrixMult.Rd +++ b/man/ds.matrixMult.Rd @@ -19,11 +19,8 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrixMult} returns to the server-side +\code{ds.matrixMult} returns to the server-side the result of the two matrix multiplication. -Also, two validity messages are returned to the client-side -indicating whether the new object has been created in each data source and if so whether -it is in a valid form. } \description{ Calculates the matrix product of two matrices and @@ -110,4 +107,6 @@ Server function called: \code{matrixMultDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/man/ds.matrixTranspose.Rd b/man/ds.matrixTranspose.Rd index 67e06867..55fcd239 100644 --- a/man/ds.matrixTranspose.Rd +++ b/man/ds.matrixTranspose.Rd @@ -18,10 +18,7 @@ objects obtained after login. If the \code{datasources} argument is not specifie the default set of connections will be used: see \code{\link[DSI]{datashield.connections_default}}.} } \value{ -\code{ds.matrixTranspose} returns to the server-side the transpose matrix. -Also, two validity messages are returned to the client-side -indicating whether the new object has been created in each data source and if so whether -it is in a valid form. +\code{ds.matrixTranspose} returns to the server-side the transpose matrix. } \description{ Transposes a matrix and writes the output to the server-side @@ -98,4 +95,6 @@ Server function called: \code{matrixTransposeDS} } \author{ DataSHIELD Development Team + +Tim Cadman, Genomics Coordination Centre, UMCG, Netherlands } diff --git a/tests/testthat/test-smk-ds.matrix.R b/tests/testthat/test-smk-ds.matrix.R index d4836760..273986c2 100644 --- a/tests/testthat/test-smk-ds.matrix.R +++ b/tests/testthat/test-smk-ds.matrix.R @@ -29,11 +29,9 @@ test_that("setup", { test_that("simplest ds.matrix", { matrix <- c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) - res <- ds.matrix(mdata=matrix, nrows.scalar=3, ncols.scalar=4) + ds.matrix(mdata=matrix, nrows.scalar=3, ncols.scalar=4) - expect_length(res, 2) - expect_equal(res[[1]], "A data object has been created in all specified data sources") - expect_equal(res[[2]], " appears valid in all sources") + ds_expect_variables(c("D", "matrix.newobj")) check.class<-ds.class("matrix.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixDet.R b/tests/testthat/test-smk-ds.matrixDet.R index 74626cbc..cc9a6ae9 100644 --- a/tests/testthat/test-smk-ds.matrixDet.R +++ b/tests/testthat/test-smk-ds.matrixDet.R @@ -32,9 +32,7 @@ test_that("simplest ds.matrixDet", { ds.matrix(mdata=matrix, nrows.scalar=3, ncols.scalar=3) res <- ds.matrixDet("matrix.newobj") - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "matrix.newobj", "matrixdet.newobj")) check.class<-ds.class("matrixdet.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixDiag.R b/tests/testthat/test-smk-ds.matrixDiag.R index 2a9b30d7..c231f42d 100644 --- a/tests/testthat/test-smk-ds.matrixDiag.R +++ b/tests/testthat/test-smk-ds.matrixDiag.R @@ -31,9 +31,7 @@ test_that("simplest ds.matrixDiag", { res <- ds.matrixDiag(matrix, aim="clientside.vector.2.matrix", newobj="matrix_diag") - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "matrix_diag")) check.class<-ds.class("matrix_diag") @@ -49,9 +47,7 @@ test_that("simplest ds.matrixDiag", { res <- ds.matrixDiag(matrix, aim="clientside.vector.2.matrix") - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "matrix_diag", "matrixdiag.newobj")) check.class<-ds.class("matrixdiag.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixDimnames.R b/tests/testthat/test-smk-ds.matrixDimnames.R index 6ac87d2f..8dbc3308 100644 --- a/tests/testthat/test-smk-ds.matrixDimnames.R +++ b/tests/testthat/test-smk-ds.matrixDimnames.R @@ -35,9 +35,7 @@ test_that("simplest ds.matrixDimnames", { res <- ds.matrixDimnames("matrix.newobj", dimnames=dimnames) - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "matrix.newobj", "matrixdimnames.newobj")) check.class<-ds.class("matrixdimnames.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixInvert.R b/tests/testthat/test-smk-ds.matrixInvert.R index 8cd89a41..a634a5d8 100644 --- a/tests/testthat/test-smk-ds.matrixInvert.R +++ b/tests/testthat/test-smk-ds.matrixInvert.R @@ -32,9 +32,7 @@ test_that("simplest ds.matrixInvert", { ds.matrix(mdata=matrix, nrows.scalar=3, ncols.scalar=3) res <- ds.matrixInvert("matrix.newobj") - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "matrix.newobj", "matrixinvert.newobj")) check.class<-ds.class("matrixinvert.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixMult.R b/tests/testthat/test-smk-ds.matrixMult.R index 001e36ef..0925fa0d 100644 --- a/tests/testthat/test-smk-ds.matrixMult.R +++ b/tests/testthat/test-smk-ds.matrixMult.R @@ -34,9 +34,7 @@ test_that("simplest ds.matrixMult", { ds.matrix(mdata=matrix2, nrows.scalar=3, ncols.scalar=3, newobj="mat2") res <- ds.matrixMult("mat1", "mat2") - expect_length(res, 2) - expect_equal(res$is.object.created, "A data object has been created in all specified data sources") - expect_equal(res$validity.check, " appears valid in all sources") + ds_expect_variables(c("D", "mat1", "mat2", "matrixmult.newobj")) check.class<-ds.class("matrixmult.newobj",datasources=ds.test_env$connections) diff --git a/tests/testthat/test-smk-ds.matrixTranspose.R b/tests/testthat/test-smk-ds.matrixTranspose.R index fa1920a7..3cef80bf 100644 --- a/tests/testthat/test-smk-ds.matrixTranspose.R +++ b/tests/testthat/test-smk-ds.matrixTranspose.R @@ -30,11 +30,9 @@ test_that("simplest ds.matrixTranspose", { matrix <- c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) ds.matrix(mdata=matrix, nrows.scalar=3, ncols.scalar=4) - res <- ds.matrixTranspose("matrix.newobj") + ds.matrixTranspose("matrix.newobj") - expect_length(res, 2) - expect_equal(res[[1]], "A data object has been created in all specified data sources") - expect_equal(res[[2]], " appears valid in all sources") + ds_expect_variables(c("D", "matrix.newobj", "matrixtranspose.newobj")) check.class<-ds.class("matrixtranspose.newobj",datasources=ds.test_env$connections) From 1f23991dc118ad88d0a3e678654b8f3d2cd22716 Mon Sep 17 00:00:00 2001 From: Tim Cadman <41470917+timcadman@users.noreply.github.com> Date: Wed, 15 Apr 2026 13:14:28 +0200 Subject: [PATCH 3/9] chore: update dsBase tar with batch-5 --- dsBase_7.0.0-permissive.tar.gz | Bin 3331893 -> 3736434 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dsBase_7.0.0-permissive.tar.gz b/dsBase_7.0.0-permissive.tar.gz index ab4b862e221e7c7882dc0f656a381d25075a3b9a..38b619659e82f4b47725a6614d70b380050f8c55 100644 GIT binary patch delta 2506066 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 G{aoUl(n>^N6f)SEM-HZ=>?WmoD#6e~ERC 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�iGE12g6 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

#E}}#YItC)`chIj@S4ST)jMXNr4e;B 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⪻>ffHFOE~CcTHFelO2z6SnX{Ze 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

6yec${&?VIQ*JlAe%Il4#%!ITCUnz$=nA^8 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

bqu(f_+ z!M|X`5#V|$ZR0KgfhOS-!MsP`=h>{(hcz1{Zhzg(mc#yVz>MEF@!^jcGvudn>A)!5JCQ*Iq-rKvIn3rYgK|zmurdeuZjrC?-935V z-0f1?%siPxs`79E5wEZjm9zW2e_84W#nh-m6V2V05FsT&l!+lD7g`?Sp63nV(SGd| zT7M|79eymaILgY$vuol#ZiYQZN65>_65I|aw-6yBMgkRHyE>n1nZCfT11{B!D+(ig z