← Back to home
Comparison · Infra & APIs

admtools vs testdat

A side-by-side editorial comparison of admtools and testdat — release velocity, themes, recent moves, and the top alternatives to consider.

admtools vs testdat: at a glance

Featureadmtoolstestdat
SectorInfra & APIsInfra & APIs
Velocity score0.00.0
Sparks · 30d00
Top themesstratigraphy, age-depth-models, paleobiology, interoperabilitydata-validation, unit-testing, testthat, tidyselect
Last editorial update1h ago2h ago
WebsiteVisit →Visit →

What is admtools?

The age-depth engine under a small stratigraphy stack, growing one adapter at a time

admtools estimates and manipulates age-depth models, with the generics time_to_strat() and strat_to_time() as the transformation layer a small stratigraphy stack is built on. Since 0.1.0 it has accumulated the S3 vocabulary that work needs — sac for sediment accumulation curves, timelist and stratlist for time- and height-associated data — and then adapters outward: pre_paleoTS for StratPal and paleoTS in 0.4.0, FossilSim taxonomy and fossils objects in 0.5.0, and age-to-time transformation for FossilSim in 0.6.0. Version 0.5.0 also added what it calls basic functionality for depth-depth models alongside the age-depth ones.

Read the full admtools trajectory →

What is testdat?

Unit testing for datasets, built on testthat and now bending to its next release.

testdat applies the testthat idiom to data rather than code: expectations that assert properties of a data frame, run as a suite, with results exportable to Excel. Recent releases have been about correctness and upstream compatibility. Expectations are now constructed via new_expectation() ahead of testthat 3.3.0, and expect_base() errors on a missing variable instead of silently passing.

Read the full testdat trajectory →

admtools vs testdat: editorial side-by-side

A
admtools
INFRA · APIS
0.0

The age-depth engine under a small stratigraphy stack, growing one adapter at a time

◆ Current state

admtools estimates and manipulates age-depth models, with the generics time_to_strat() and strat_to_time() as the transformation layer a small stratigraphy stack is built on. Since 0.1.0 it has accumulated the S3 vocabulary that work needs — sac for sediment accumulation curves, timelist and stratlist for time- and height-associated data — and then adapters outward: pre_paleoTS for StratPal and paleoTS in 0.4.0, FossilSim taxonomy and fossils objects in 0.5.0, and age-to-time transformation for FossilSim in 0.6.0. Version 0.5.0 also added what it calls basic functionality for depth-depth models alongside the age-depth ones.

◆ Where it's heading

This package moves in step with StratPal, from the same group: admtools 0.4.0 shipped its pre_paleoTS transformations fifty-seven minutes before StratPal released the class itself, and both took on FossilSim within a month of each other in spring 2025. The pattern is consistent — establish generics, define classes, then connect to whatever package the field already uses. The depth-depth work is the one thread pointing inward rather than outward, and it is still described as basic.

◆ Prediction

Depth-depth models are the obvious thing to finish, since they mirror age-depth machinery the package already has; expect any release here to be shadowed by a matching change in StratPal within weeks either side.

T
testdat
INFRA · APIS
0.0

Unit testing for datasets, built on testthat and now bending to its next release.

◆ Current state

testdat applies the testthat idiom to data rather than code: expectations that assert properties of a data frame, run as a suite, with results exportable to Excel. Recent releases have been about correctness and upstream compatibility. Expectations are now constructed via new_expectation() ahead of testthat 3.3.0, and expect_base() errors on a missing variable instead of silently passing.

◆ Where it's heading

The package reached its shape early and has spent the years since sanding it. The design decisions worth noting are all in the past: the move to tidyselect at 0.3.0, the test data pipe at 0.4.0, and the failure messages at 0.4.1 that name which variable failed rather than just reporting a count. Since then activity is sparse and reactive, tracking testthat and R-devel. The two 0.4.3 and 0.4.4 tags arriving ninety minutes apart on the same day is the signature of a release caught by an upstream deadline.

◆ Prediction

The immediate work is finishing the testthat 3.3.0 adaptation. Beyond that the notes give no evidence of new expectation families; the package looks maintained rather than developed.

Alternatives to admtools and testdat

Other Infra & APIs products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either admtools or testdat.

See all admtools alternatives → · See all testdat alternatives →

Recent activity from admtools and testdat

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 9mo agotestdatExpectations rebuilt on new_expectation() for testthat 3.3.0
  2. 9mo agotestdatexpect_base() errors on a missing variable instead of passing
  3. 1y agoadmtoolsAge-to-time transformation for FossilSim integration
  4. 1y agoadmtoolsDepth-depth models and FossilSim object transformations
  5. 1y agoadmtoolspre_paleoTS transformations and age-depth model anchoring
  6. 1y agoadmtoolsMore sedimentation-rate generator options and sac utilities
  7. 2y agoadmtoolstimelist and stratlist classes; unified transformation syntax
  8. 2y agoadmtoolsMultiple tie points, sedimentation-rate estimation and the sac class
  9. 2y agotestdatGrouped data frames ungrouped before testing
  10. 3y agotestdatFailure messages name the failing variable; expect_depends() added
  11. 4y agotestdatTest data pipe lets expectations sit inline in a chain
  12. 4y agotestdatCRAN release moves variable selection to tidyselect

Frequently asked questions

What is the difference between admtools and testdat?

They serve adjacent needs but don't currently overlap on shipped themes. admtools and testdat are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is admtools better than testdat?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. admtools and testdat are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.

What are the best alternatives to admtools?

Top admtools alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "admtools alternatives" section above for the current picks, or visit /alternatives/admtools for the full list with editorial commentary on each.

What are the best alternatives to testdat?

Top testdat alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "testdat alternatives" section above for the current picks, or visit /alternatives/testdat for the full list with editorial commentary on each.