From b16be9d4a7a0285648def2c79a5db1f3154cac2a Mon Sep 17 00:00:00 2001
From: sebo <sebastian.bergandy@external.mgm-cp.com>
Date: Mon, 20 Jan 2025 13:28:18 +0100
Subject: [PATCH] OZG-6988 add form component

Sub task: OZG-7446
---
 .../statistik-container.component.html        |  4 +++-
 .../statistik-container.component.spec.ts     | 19 +++++++++++++++++
 .../statistik-container.component.ts          |  3 ++-
 ...admin-statistik-fields-form.component.html |  1 +
 ...in-statistik-fields-form.component.spec.ts | 21 +++++++++++++++++++
 .../admin-statistik-fields-form.component.ts  | 10 +++++++++
 6 files changed, 56 insertions(+), 2 deletions(-)
 create mode 100644 alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.html
 create mode 100644 alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.spec.ts
 create mode 100644 alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.ts

diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
index 09cc3244d7..8ee2413999 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
@@ -24,7 +24,9 @@
 
 -->
 <h1 class="heading-1" data-test-id="statistik-header-text">Statistik</h1>
-@if (!evaluateAdditionalFields) {
+@if (evaluateAdditionalFields) {
+  <admin-statistik-fields-form data-test-id="statistik-fields-form"></admin-statistik-fields-form>
+} @else {
   <ods-button
     text="Weitere Felder auswerten"
     (clickEmitter)="onEvaluateAdditionalFields()"
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.spec.ts b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.spec.ts
index beb4e71bca..8c02510de7 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.spec.ts
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.spec.ts
@@ -31,6 +31,7 @@ describe('StatistikContainerComponent', () => {
   let fixture: ComponentFixture<StatistikContainerComponent>;
 
   const evaluateAdditionalFieldsTestId: string = getDataTestIdOf('weitere-felder-auswerten-button');
+  const statistikFieldsFormTestId: string = getDataTestIdOf('statistik-fields-form');
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
@@ -100,5 +101,23 @@ describe('StatistikContainerComponent', () => {
         });
       });
     });
+
+    describe('stastik fields form', () => {
+      it('should exists', () => {
+        component.evaluateAdditionalFields = true;
+
+        fixture.detectChanges();
+
+        existsAsHtmlElement(fixture, statistikFieldsFormTestId);
+      });
+
+      it('should NOT exists', () => {
+        component.evaluateAdditionalFields = false;
+
+        fixture.detectChanges();
+
+        notExistsAsHtmlElement(fixture, statistikFieldsFormTestId);
+      });
+    });
   });
 });
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.ts b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.ts
index bf802db58e..e6442a1ebc 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.ts
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.ts
@@ -24,12 +24,13 @@
 import { CommonModule } from '@angular/common';
 import { Component } from '@angular/core';
 import { ButtonComponent } from '@ods/system';
+import { AdminStatistikFieldsFormComponent } from './statistik-fields-form/admin-statistik-fields-form.component';
 
 @Component({
   selector: 'admin-statistik-container',
   templateUrl: './statistik-container.component.html',
   standalone: true,
-  imports: [CommonModule, ButtonComponent],
+  imports: [CommonModule, ButtonComponent, AdminStatistikFieldsFormComponent],
 })
 export class StatistikContainerComponent {
   public evaluateAdditionalFields: boolean = false;
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.html b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.html
new file mode 100644
index 0000000000..ea44591621
--- /dev/null
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.html
@@ -0,0 +1 @@
+<p>admin-statistik-fields-form works!</p>
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.spec.ts b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.spec.ts
new file mode 100644
index 0000000000..d53fa335ea
--- /dev/null
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.spec.ts
@@ -0,0 +1,21 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { AdminStatistikFieldsFormComponent } from './admin-statistik-fields-form.component';
+
+describe('AdminStatistikFieldsFormComponent', () => {
+  let component: AdminStatistikFieldsFormComponent;
+  let fixture: ComponentFixture<AdminStatistikFieldsFormComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [AdminStatistikFieldsFormComponent],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(AdminStatistikFieldsFormComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.ts b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.ts
new file mode 100644
index 0000000000..2d5bbced35
--- /dev/null
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-fields-form/admin-statistik-fields-form.component.ts
@@ -0,0 +1,10 @@
+import { CommonModule } from '@angular/common';
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'admin-statistik-fields-form',
+  standalone: true,
+  imports: [CommonModule],
+  templateUrl: './admin-statistik-fields-form.component.html',
+})
+export class AdminStatistikFieldsFormComponent {}
-- 
GitLab