From 2b862bbe4f9b588a883fefa91834cafdbe93f2ab Mon Sep 17 00:00:00 2001
From: OZGCloud <ozgcloud@mgm-tp.com>
Date: Wed, 13 Nov 2024 15:55:22 +0100
Subject: [PATCH] OZG-4310 fix tests

---
 .../user-add-page/user-add-page.component.spec.ts   |  4 +++-
 .../checkbox-editor/checkbox-editor.component.html  |  2 +-
 .../checkbox-editor.component.spec.ts               |  2 ++
 .../design-component/test/form/MockNgControl.ts     | 13 +++++++++++++
 4 files changed, 19 insertions(+), 2 deletions(-)
 create mode 100644 alfa-client/libs/design-component/test/form/MockNgControl.ts

diff --git a/alfa-client/apps/admin/src/pages/users-roles/user-add-page/user-add-page.component.spec.ts b/alfa-client/apps/admin/src/pages/users-roles/user-add-page/user-add-page.component.spec.ts
index 171a5451a4..eecaa8e5c0 100644
--- a/alfa-client/apps/admin/src/pages/users-roles/user-add-page/user-add-page.component.spec.ts
+++ b/alfa-client/apps/admin/src/pages/users-roles/user-add-page/user-add-page.component.spec.ts
@@ -1,4 +1,6 @@
+import { UserAddFormComponent } from '@admin-client/admin-settings';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { MockComponent } from 'ng-mocks';
 import { UserAddPageComponent } from './user-add-page.component';
 
 describe('UserAddPageComponent', () => {
@@ -7,7 +9,7 @@ describe('UserAddPageComponent', () => {
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
-      imports: [UserAddPageComponent],
+      declarations: [UserAddPageComponent, MockComponent(UserAddFormComponent)],
     }).compileComponents();
 
     fixture = TestBed.createComponent(UserAddPageComponent);
diff --git a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
index 7f0e569973..d099703c58 100644
--- a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
+++ b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.html
@@ -1,5 +1,5 @@
 <ods-checkbox
-  [fieldControl]="control.control"
+  [fieldControl]="fieldControl"
   [inputId]="inputId"
   [label]="label"
   [disabled]="control.disabled"
diff --git a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.spec.ts b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.spec.ts
index 9c80662fb8..53ecd61b00 100644
--- a/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.spec.ts
+++ b/alfa-client/libs/design-component/src/lib/form/checkbox-editor/checkbox-editor.component.spec.ts
@@ -3,6 +3,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { faker } from '@faker-js/faker';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
 import { createInvalidParam } from 'libs/tech-shared/test/error';
+import { MockNgControl } from '../../../../test/form/MockNgControl';
 import { CheckboxEditorComponent } from './checkbox-editor.component';
 
 describe('CheckboxEditorComponent', () => {
@@ -20,6 +21,7 @@ describe('CheckboxEditorComponent', () => {
     fixture = TestBed.createComponent(CheckboxEditorComponent);
     component = fixture.componentInstance;
     component.label = labelText;
+    component.control = new MockNgControl();
     fixture.detectChanges();
   });
 
diff --git a/alfa-client/libs/design-component/test/form/MockNgControl.ts b/alfa-client/libs/design-component/test/form/MockNgControl.ts
new file mode 100644
index 0000000000..80a3bc01a2
--- /dev/null
+++ b/alfa-client/libs/design-component/test/form/MockNgControl.ts
@@ -0,0 +1,13 @@
+import { Injectable } from '@angular/core';
+import { AbstractControl, ControlValueAccessor, NgControl, UntypedFormControl } from '@angular/forms';
+
+@Injectable()
+export class MockNgControl extends NgControl {
+  valueAccessor: ControlValueAccessor | null = null;
+
+  get control(): AbstractControl {
+    return new UntypedFormControl(null);
+  }
+
+  viewToModelUpdate(newValue: any): void {}
+}
-- 
GitLab