Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moved tests to the more appropriate directory and added a test case based on the performance improvement to be brought by #5427 #6094

Merged
merged 12 commits into from
Apr 24, 2024
22 changes: 19 additions & 3 deletions inst/atime/tests.R → .ci/atime/tests.R
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ pkg.edit.fun = function(old.Package, new.Package, sha, new.pkg.path) {
test.list <- list(
# Performance regression discussed in: https://github.com/Rdatatable/data.table/issues/4311
# Fixed in: https://github.com/Rdatatable/data.table/pull/4440
"Test regression fixed in #4440" = list(
"shallow regression fixed in #4440" = list(
pkg.edit.fun = pkg.edit.fun,
N = 10^seq(3,8),
setup = quote({
Expand All @@ -90,7 +90,7 @@ test.list <- list(
# Test based on: https://github.com/Rdatatable/data.table/issues/5424
# Performance regression introduced from a commit in: https://github.com/Rdatatable/data.table/pull/4491
# Fixed in: https://github.com/Rdatatable/data.table/pull/5463
"Test regression fixed in #5463" = list(
"memrecycle regression fixed in #5463" = list(
pkg.edit.fun = pkg.edit.fun,
N = 10^seq(3, 8),
setup = quote({
Expand All @@ -105,6 +105,22 @@ test.list <- list(
expr = quote(data.table:::`[.data.table`(dt_mod, , N := .N, by = g)),
Before = "be2f72e6f5c90622fe72e1c315ca05769a9dc854", # Parent of the regression causing commit (https://github.com/Rdatatable/data.table/commit/e793f53466d99f86e70fc2611b708ae8c601a451) in the PR that introduced the issue (https://github.com/Rdatatable/data.table/pull/4491/commits)
Regression = "e793f53466d99f86e70fc2611b708ae8c601a451", # Commit responsible for regression in the PR that introduced the issue (https://github.com/Rdatatable/data.table/pull/4491/commits)
Fixed = "58409197426ced4714af842650b0cc3b9e2cb842") # Last commit in the PR that fixed the regression (https://github.com/Rdatatable/data.table/pull/5463/commits)
Fixed = "58409197426ced4714af842650b0cc3b9e2cb842"), # Last commit in the PR that fixed the regression (https://github.com/Rdatatable/data.table/pull/5463/commits)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another aside: @tdhock let's support test.list having a NULL final entry, that way we can have like:

test.list <- list(
  "A" = list(...),
  "B" = list(...),
  NULL
)

And avoid the pesky git diff on irrelevant lines every time a test is added (as in here, where we add , --> diff)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great idea

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

implemented in atime github, https://github.com/tdhock/atime/blob/ea591e37a8fbf69a06a0cdbb8a51108cb73290fb/R/test.R#L14 I will file a follow up PR next week after that gets on CRAN


# Issue reported in: https://github.com/Rdatatable/data.table/issues/5426
# To be fixed in: https://github.com/Rdatatable/data.table/pull/5427
"setDT improvement implemented in #5427" = list(
Anirban166 marked this conversation as resolved.
Show resolved Hide resolved
pkg.edit.fun = pkg.edit.fun,
N = 10^seq(1, 7),
setup = quote({
L <- replicate(N, 1, simplify = FALSE)
setDT(L)
}),
expr = quote({
data.table:::setattr(L, "class", NULL)
data.table:::setDT(L)
}),
Slow = "c4a2085e35689a108d67dacb2f8261e4964d7e12", # Parent of the first commit in the PR that fixes the issue (https://github.com/Rdatatable/data.table/commit/7cc4da4c1c8e568f655ab5167922dcdb75953801)
Fast = "1872f473b20fdcddc5c1b35d79fe9229cd9a1d15") # Last commit in the PR that fixes the issue (https://github.com/Rdatatable/data.table/pull/5427/commits)
)
# nolint end: undesirable_operator_linter.
5 changes: 3 additions & 2 deletions .github/workflows/performance-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ on:
- synchronize
paths:
- 'R/**'
- 'src/**'
- 'src/**'
- '.ci/atime/**'

jobs:
comment:
Expand All @@ -20,4 +21,4 @@ jobs:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
repo_token: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: Anirban166/Autocomment-atime-results@v1.1.6
- uses: Anirban166/Autocomment-atime-results@v1.2.0
Loading