e9ed61a8fd
Tests: restore settings in on_exit to avoid leftover state
...
Setup + on_exit save/restore member_field_visibility and
member_field_required in member, setting, index_component and
form_error_handling tests.
2026-02-23 22:51:18 +01:00
d44c5bdf94
Tests: member required fields, setting, member field live, sync_contact
...
Add tests for required validation, update_single_member_field, form
required map. Add street/postal_code/city to sync_contact when Vereinfacht configured.
2026-02-23 22:13:53 +01:00
5343b78750
feat(vereinfacht): Settings UI and bulk sync
...
- GlobalSettingsLive: Vereinfacht section, sync button, last sync result
- Test: Vereinfacht Integration section visible
2026-02-23 19:51:32 +01:00
123227a50e
refactor: add data-testid selectors for groups ui
continuous-integration/drone/push Build is failing
2026-02-20 16:34:15 +01:00
b18f895939
chore: rename ImportExport module to Import
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-17 18:59:18 +01:00
bd4dc86cca
StatisticsLiveTest: explicit auth (read_only) and redirect test for own_data
2026-02-12 19:35:48 +01:00
3eead112b0
Statistics tests: strict first_join_year nil, fee_type_id in URL
2026-02-12 19:35:48 +01:00
490dced8c8
Statistics: member stats independent of fee type
2026-02-12 19:35:48 +01:00
6e309622a0
Add StatisticsLive: overview, bars by year, pie chart
...
- Summary cards: active/inactive members, open amount
- Joins and exits by year (horizontal bars)
- Contributions by year: table with stacked bar above amounts
- Column order: Paid, Unpaid, Suspended, Total; color dots for legend
- All years combined pie chart
- LiveView tests
2026-02-12 19:35:48 +01:00
2f8a6a2768
Merge remote-tracking branch 'origin/main' into feature/ui-for-adding-members-groups
continuous-integration/drone/push Build is failing
continuous-integration/drone/promote/production Build is passing
2026-02-12 15:16:35 +01:00
900f322422
fix: pr comments
continuous-integration/drone/push Build is passing
2026-02-12 15:08:40 +01:00
9115d53198
tests: add tests
2026-02-09 13:34:57 +01:00
36e57b24be
Merge branch 'main' into feature/export_csv
continuous-integration/drone/push Build is failing
2026-02-06 08:02:05 +01:00
b429a4dbb6
test: adds tests
continuous-integration/drone/push Build is failing
2026-02-04 16:43:12 +01:00
3415faeb21
Merge branch 'main' into feature/337_polish_import
continuous-integration/drone/push Build is failing
2026-02-04 16:28:55 +01:00
d34ff57531
refactor
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-04 15:52:00 +01:00
4d3a64c177
Add Role resource policies (defense-in-depth)
...
- PermissionSets: Role read :all for own_data, read_only, normal_user; admin keeps full CRUD
- Role resource: authorizers and policies with HasPermission
- Tests: role_policies_test.exs (read all, create/update/destroy admin only)
- Fix existing tests to pass actor or authorize?: false for Role operations
2026-02-04 14:07:38 +01:00
a2e1054c8d
Tests: use Mv.Fixtures, fix warnings, Credo TODO disable
...
- Policy tests: use Fixtures where applicable; create_custom_field() fix in custom_field_value.
- Replace unused actor with _actor, remove unused alias Accounts in policy tests.
- profile_navigation_test: disable Credo for intentional TODO comment.
2026-02-04 00:34:12 +01:00
101fd39f18
Fee settings and fee type form: pass actor for MembershipFeeType read
...
- membership_fee_settings_live: current_actor(socket), Ash.read! with actor
- membership_fee_type_live/form: Ash.get! with actor in mount
- check_page_permission_test: normal_user /groups/new and /groups/:slug/edit allowed
- membership_fee_type_live form_test: actor for Ash.read_one!/get!
2026-02-03 23:52:27 +01:00
cbc9376b7b
Tests: data-testid selectors, scoped delete, sidebar testid
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
Member/User auth tests use data-testid and #row-id selectors.
Sidebar auth tests assert on data-testid=sidebar-administration.
Sidebar test expects data-testid in expanded-menu-group markup.
2026-02-03 17:16:15 +01:00
cc9e530d80
Add User LiveView authorization tests
...
Covers admin, read_only, member, normal_user for Index and Show.
Asserts New User / Edit / Delete visibility and redirect for non-admin.
2026-02-03 16:56:51 +01:00
5e361ba400
Add Member LiveView authorization tests
...
Covers read_only, normal_user, admin, own_data for Index and Show.
Asserts New Member / Edit / Delete visibility and redirect for Mitglied.
2026-02-03 16:56:51 +01:00
e4671e816b
fix: failing test due to merge
continuous-integration/drone/push Build is failing
continuous-integration/drone/promote/production Build is passing
2026-02-03 16:30:59 +01:00
03f27a5938
Merge remote-tracking branch 'origin/main' into feature/ui-for-adding-members-groups
2026-02-03 16:15:53 +01:00
7041aa320a
refactor
2026-02-03 15:23:35 +01:00
b2e9aff359
test: add tests
continuous-integration/drone/push Build is failing
2026-02-03 14:37:48 +01:00
7f001c55c5
feat: add ui to add members to groups
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-03 11:44:08 +01:00
960506d16a
refactoring
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-02 16:56:07 +01:00
aef3aa299f
fix test
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-02 15:04:07 +01:00
b6d53d2826
refactor: add test to seperate async false module
2026-02-02 10:22:05 +01:00
d61a939deb
formatting
continuous-integration/drone/push Build is passing
2026-02-02 09:50:47 +01:00
9fd617e45a
tests: add tests for config
2026-02-02 09:48:37 +01:00
28d134b2b0
chore: remove unused aliases in tests
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
- Drop unused Member alias from membership and membership_fees test files.
2026-01-30 00:00:33 +01:00
ad00e8e7b6
test: add page permission tests and ConnCase role tags
...
- ConnCase: add :read_only and :normal_user role tags for tests.
- Add CheckPagePermission plug tests (unit + integration for member, read_only,
normal_user, admin). Update permission_sets_test (refute "/" for own_data).
- Profile navigation, global_settings, role_live, membership_fee_type: use
users with role for "/" access; expect redirect for own_data on /settings
and /admin/roles.
2026-01-30 00:00:32 +01:00
a536485b30
test: add tdd tests for group member add functionality
continuous-integration/drone/push Build is failing
2026-01-29 17:12:43 +01:00
4473cfd372
Tests: use code interface for Member create/update (actor propagation)
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is passing
2026-01-29 16:10:12 +01:00
9a7622ebed
fix: pass actor to CustomFieldLive.FormComponent for save
...
IndexComponent now passes actor to FormComponent; FormComponent uses
assigns[:actor] instead of current_actor(socket). Add test that submits
new custom field form on settings page.
2026-01-29 16:10:12 +01:00
1d17c4f2dd
fix: CustomField policies, no system-actor fallback, guidelines
...
- Tests and UI pass actor for CustomField create/read/destroy; seeds use actor
- Member required-custom-fields validation uses context.actor only (no fallback)
- CODE_GUIDELINES: add rule forbidding system-actor fallbacks
2026-01-29 16:10:12 +01:00
9b314a9806
fix: credo error
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-01-29 15:26:45 +01:00
b4adf63e83
feix: optimize queries for groups
continuous-integration/drone/push Build is failing
2026-01-29 15:22:40 +01:00
0b29fbbd21
test: restore removed tests including optimizations
2026-01-29 12:59:06 +01:00
ea3bdcaa65
refactor: apply review comments
continuous-integration/drone/push Build is passing
2026-01-28 14:42:16 +01:00
050ca4a13c
test: move slow and less critical tests to nightly suite
continuous-integration/drone/push Build is passing
2026-01-28 14:34:05 +01:00
91f8bb03bc
refactor: remove tests against basic framework functionalities
continuous-integration/drone/push Build is passing
2026-01-28 13:46:18 +01:00
67e06e12ce
refactor: move slow performance tests to extra test suite
continuous-integration/drone/push Build is passing
2026-01-28 12:00:32 +01:00
ddc8335cc0
refactor: improve groups LiveView based on code review feedback
continuous-integration/drone/push Build is passing
2026-01-28 10:33:27 +01:00
3eb4cde0b7
Merge remote-tracking branch 'origin/main' into feature/372-groups-management
continuous-integration/drone/push Build is passing
2026-01-27 23:48:31 +01:00
9991291b2f
test: adapt tests to reflect implementation details
continuous-integration/drone/push Build is passing
2026-01-27 23:40:12 +01:00
6faa9847f4
feat: add groups administration #372
2026-01-27 21:55:17 +01:00
f05fae3ea3
test: add tdd tests for groups administration #372
continuous-integration/drone/push Build is failing
2026-01-27 18:24:42 +01:00