Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions lib/Settings/example-sets/zuiddrecht.json
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,11 @@
"key": "sociaal-domein",
"gid": "zuiddrecht-sociaal-domein",
"displayName": "Sociaal domein"
},
{
"key": "mobiliteit-en-verkeer",
"gid": "zuiddrecht-mobiliteit-en-verkeer",
"displayName": "Mobiliteit en verkeer"
}
],
"people": [
Expand Down Expand Up @@ -420,6 +425,22 @@
"functioneel-beheer"
],
"function": "CISO"
},
{
"key": "lars",
"uid": "lars.dekoning",
"displayName": "Lars de Koning",
"givenName": "Lars",
"prefix": "de",
"familyName": "Koning",
"email": "lars.dekoning@zuiddrecht.example",
"role": "employee",
"department": "Mobiliteit en verkeer",
"groups": [
"medewerkers",
"mobiliteit-en-verkeer"
],
"function": "Beleidsadviseur verkeer"
}
],
"organisations": [
Expand Down
15 changes: 15 additions & 0 deletions openspec/changes/zuiddrecht-cast-lars/proposal.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## Why

Lars de Koning of Mobiliteit en verkeer turns up on more than thirty dossiq boards:
- as the colleague asked for the Lindelaan documents ("Stukken opvragen bij Mobiliteit en verkeer");
- in the hours card;
- as a person involved in the case;
- in the handler pickers;
- as the handler on the case lists.

He was not in the Zuiddrecht cast, so no fragment could name him.

## What Changes

- The cast gains the group `mobiliteit-en-verkeer` ("Mobiliteit en verkeer").
- It also gains the employee Lars de Koning (`lars.dekoning`), a traffic policy adviser in that group.
12 changes: 12 additions & 0 deletions openspec/changes/zuiddrecht-cast-lars/specs/example-sets/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# example-sets Delta

## ADDED Requirements

### Requirement: The Zuiddrecht cast has Lars de Koning of Mobiliteit en verkeer

The Zuiddrecht cast SHALL hold the group `mobiliteit-en-verkeer`, displayed as "Mobiliteit en verkeer". It SHALL also hold the employee Lars de Koning, account `lars.dekoning`, as a member of that group.

#### Scenario: A fragment names Lars
- **GIVEN** a fragment assigns a task to `{{cast:lars.uid}}`
- **WHEN** the set is installed
- **THEN** the task SHALL belong to the account `lars.dekoning`
2 changes: 2 additions & 0 deletions openspec/changes/zuiddrecht-cast-lars/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [x] T01 Cast group mobiliteit-en-verkeer and employee Lars de Koning
- [x] T02 PHPUnit: the shipped Zuiddrecht set names him and his group
7 changes: 6 additions & 1 deletion tests/Unit/Service/ExampleSet/ExampleSetCatalogueTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ public function testTheShippedZuiddrechtSetIsWhole(): void {
$this->apps['openregister'] = dirname(__DIR__, 4);
$plan = $this->catalogue->gather(set: 'zuiddrecht');

$this->assertCount(expectedCount: 19, haystack: $plan['cast']['people']);
$this->assertCount(expectedCount: 20, haystack: $plan['cast']['people']);
// The handler the dossiq boards draw as "u", who owns a saved view.
$pieter = $plan['cast']['people']['pieter'];
$this->assertSame(
Expand All @@ -118,6 +118,11 @@ public function testTheShippedZuiddrechtSetIsWhole(): void {
// The jeugdteam's regisseur of the jeugdwet example case.
$this->assertSame(['fatma.kaya', ['sociaal-domein']], [$plan['cast']['people']['fatma']['uid'], array_values(array_diff($plan['cast']['people']['fatma']['groups'], ['medewerkers']))]);
$this->assertSame(['brp' => ['mock' => true], 'kvk' => ['mock' => true]], $plan['requires']);
// The colleague at Mobiliteit en verkeer the dossiq case boards ask for the Lindelaan documents.
$this->assertSame(
expected: ['lars.dekoning', 'Lars de Koning', ['mobiliteit-en-verkeer']],
actual: [$plan['cast']['people']['lars']['uid'], $plan['cast']['people']['lars']['displayName'], array_values(array_diff($plan['cast']['people']['lars']['groups'], ['medewerkers']))]
);
$this->assertSame(['vergunningen'], array_values(array_diff($plan['cast']['people']['marleen']['groups'], ['medewerkers'])));
$this->assertSame('Teamleider', $plan['cast']['people']['marleen']['function']);
$this->assertNotContains('admin', array_column($plan['cast']['groups'], 'gid'));
Expand Down
Loading