Skip to content

Commit ae1db7e

Browse files
authored
Refactor the test suite and the project toml structure (#83)
* Refactor LieGroupsTestSuite to LieGroups.Test and an Test extension. * bump version. Add news. * Fix a typo.
1 parent bc1d804 commit ae1db7e

40 files changed

+398
-388
lines changed

.codecov.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
ignore:
2-
- "src/documentation_glossary.jl" # exclude this since it is just use to create the docs and code cov goes bogus on this.
2+
- "src/documentation_glossary.jl" # exclude this since it is just use to create the docs and code cov goes bogus on this.
3+
- "src/test_suite/test_suite.jl" # excluded since we do not write tests for tests
4+
- "ext/LieGroupsTestExt.jl"

.github/dependabot.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
2+
# For the Julia part inspired by
3+
# * https://github.com/JuliaDiff/DifferentiationInterface.jl/pull/924
4+
# * https://github.com/NumericalEarth/Breeze.jl/blob/f066f4dbca086c622be30c9276dae6e79d8e6c0a/.github/dependabot.yml
5+
version: 2
6+
enable-beta-ecosystems: true # for now necessary to use the Julia ecosystem
7+
updates:
8+
- package-ecosystem: "github-actions"
9+
directory: "/" # Location of package manifests
10+
schedule:
11+
interval: "weekly"
12+
- package-ecosystem: "julia"
13+
directories: # Location of Julia projects
14+
- "/"
15+
- "/docs"
16+
- "/tutorials"
17+
- "/test"
18+
schedule:
19+
interval: "daily"
20+
groups:
21+
# Group all Julia package updates into a single PR:
22+
all-julia-packages:
23+
patterns:
24+
- "*"

NEWS.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,14 @@ All notable Changes to the Julia package `LieGroups.jl` will be documented in th
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.1.9] 2025-11-27
9+
10+
### Changed
11+
12+
* the formerly internal `LieGroupsTestSuite` module inside tests is now available as `LieGroups.Test` as soon as `Test.jl` is loaded.
13+
* refactored the Project.toml to use a `[workspace]`
14+
* moved the test dependencies into a separate `test/Project.toml`
15+
816
## [0.1.8] 2025-10-31
917

1018
### Added

Project.toml

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "LieGroups"
22
uuid = "6774de46-80ba-43f8-ba42-e41071ccfc5f"
33
authors = ["Seth Axen <[email protected]>", "Mateusz Baran <[email protected]>", "Ronny Bergmann <[email protected]>", "Yueh-Hua Tu", "Olivier Verdier <[email protected]>"]
4-
version = "0.1.8"
4+
version = "0.1.9"
55

66
[deps]
77
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
@@ -13,12 +13,13 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
1313

1414
[weakdeps]
1515
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
16+
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
1617

1718
[extensions]
1819
LieGroupsRecursiveArrayToolsExt = "RecursiveArrayTools"
20+
LieGroupsTestExt = "Test"
1921

2022
[compat]
21-
Aqua = "0.8"
2223
LinearAlgebra = "1.10"
2324
Manifolds = "0.11"
2425
ManifoldsBase = "2"
@@ -29,13 +30,5 @@ StaticArrays = "1.5"
2930
Test = "1.10"
3031
julia = "1.10"
3132

32-
[extras]
33-
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
34-
Manifolds = "1cead3c2-87b3-11e9-0ccd-23c62b72b94e"
35-
ManifoldsBase = "3362f125-f0bb-47a3-aa74-596ffd7ef2fb"
36-
Quaternions = "94ee1d12-ae83-5a48-8b1c-48b8ff168ae0"
37-
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
38-
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
39-
40-
[targets]
41-
test = ["Test", "Aqua", "Manifolds", "ManifoldsBase", "Quaternions", "RecursiveArrayTools"]
33+
[workspace]
34+
projects = ["test", "docs", "tutorials"]

docs/Project.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ DocumenterInterLinks = "d12716ef-a0f6-4df4-a9f1-a5a34e75c656"
55
LieGroups = "6774de46-80ba-43f8-ba42-e41071ccfc5f"
66
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
77
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
8+
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
9+
10+
[sources]
11+
LieGroups = {path = ".."}
812

913
[compat]
1014
Documenter = "1"
1115
DocumenterCitations = "1.3"
1216
DocumenterInterLinks = "1"
1317
LieGroups = "0.1.5"
1418
LinearAlgebra = "1.11"
15-
16-
[sources]
17-
LieGroups = { path = ".." }

docs/make.jl

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ using Documenter
9494
using DocumenterCitations, DocumenterInterLinks
9595
using LinearAlgebra
9696
using LieGroups
97-
using RecursiveArrayTools
97+
using RecursiveArrayTools, Test
9898

9999
# (e) add contributing.md and changelog.md to the docs – and link to releases and issues
100100

@@ -150,7 +150,7 @@ makedocs(;
150150
size_threshold_warn = 200 * 2^10, # raise slightly from 100 to 200 KiB
151151
size_threshold = 300 * 2^10, # raise slightly 200 to to 300 KiB
152152
),
153-
modules = [LieGroups, Base.get_extension(LieGroups, :LieGroupsRecursiveArrayToolsExt)],
153+
modules = [LieGroups, Base.get_extension(LieGroups, :LieGroupsRecursiveArrayToolsExt), Base.get_extension(LieGroups, :LieGroupsTestExt)],
154154
authors = "Seth Axen, Mateusz Baran, Ronny Bergmann, Olivier Verdier, and contributors",
155155
sitename = "LieGroups.jl",
156156
pages = [
@@ -180,6 +180,7 @@ makedocs(;
180180
"Lie algebra" => "interface/algebra.md",
181181
"Group operation" => "interface/operations.md",
182182
"Group action" => "interface/actions.md",
183+
"A test suite" => "test_suite.md",
183184
],
184185
"Contributing to LieGroups.jl" => "contributing.md",
185186
"Notation" => "notation.md",

docs/src/test_suite.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# A test suite for Lie groups
2+
3+
In the sub module `LieGroups.Test`, we provide a test suite for Lie groups and Lie group actions.
4+
5+
```@docs
6+
LieGroups.Test
7+
```
8+
9+
## Test suites
10+
11+
```@docs
12+
LieGroups.Test.test_lie_group
13+
LieGroups.Test.test_group_action
14+
```
15+
16+
## Single test functions
17+
18+
```@docs
19+
LieGroups.Test.test_apply
20+
LieGroups.Test.test_adjoint
21+
LieGroups.Test.test_compose
22+
LieGroups.Test.test_conjugate
23+
LieGroups.Test.test_copyto
24+
LieGroups.Test.test_diff_apply
25+
LieGroups.Test.test_diff_conjugate
26+
LieGroups.Test.test_diff_group_apply
27+
LieGroups.Test.test_diff_inv
28+
LieGroups.Test.test_diff_left_compose
29+
LieGroups.Test.test_diff_right_compose
30+
LieGroups.Test.test_exp_log
31+
LieGroups.Test.test_identity
32+
LieGroups.Test.test_hat_vee
33+
LieGroups.Test.test_identity_element
34+
LieGroups.Test.test_injectivity_radius
35+
LieGroups.Test.test_inner
36+
LieGroups.Test.test_inv
37+
LieGroups.Test.test_inv_compose
38+
LieGroups.Test.test_is_flat
39+
LieGroups.Test.test_jacobian_conjugate
40+
LieGroups.Test.test_jacobian_exp
41+
LieGroups.Test.test_lie_bracket
42+
LieGroups.Test.test_norm
43+
LieGroups.Test.test_push_pull_tangent
44+
LieGroups.Test.test_rand
45+
LieGroups.Test.test_show
46+
```
47+
48+
## Helper functions
49+
50+
```@docs
51+
LieGroups.Test.rotation_matrix
52+
```

0 commit comments

Comments
 (0)