This commit applies `strictNullChecks` to the entire codebase to improve maintainability and type safety. Key changes include: - Remove some explicit null-checks where unnecessary. - Add necessary null-checks. - Refactor static factory functions for a more functional approach. - Improve some test names and contexts for better debugging. - Add unit tests for any additional logic introduced. - Refactor `createPositionFromRegexFullMatch` to its own function as the logic is reused. - Prefer `find` prefix on functions that may return `undefined` and `get` prefix for those that always return a value.
26 lines
695 B
TypeScript
26 lines
695 B
TypeScript
import type { CategoryData, CategoryOrScriptData, DocumentationData } from '@/application/collections/';
|
|
import { createScriptDataWithCode } from '@tests/unit/shared/Stubs/ScriptDataStub';
|
|
|
|
export class CategoryDataStub implements CategoryData {
|
|
public children: readonly CategoryOrScriptData[] = [createScriptDataWithCode()];
|
|
|
|
public category = 'category name';
|
|
|
|
public docs?: DocumentationData;
|
|
|
|
public withChildren(children: readonly CategoryOrScriptData[]) {
|
|
this.children = children;
|
|
return this;
|
|
}
|
|
|
|
public withName(name: string) {
|
|
this.category = name;
|
|
return this;
|
|
}
|
|
|
|
public withDocs(docs: DocumentationData) {
|
|
this.docs = docs;
|
|
return this;
|
|
}
|
|
}
|