Add more and unify tests for absent object cases

- Unify test data for nonexistence of an object/string and collection.
- Introduce more test through adding missing test data to existing tests.
- Improve logic for checking absence of values to match tests.
- Add missing tests for absent value validation.
- Update documentation to include shared test functionality.
This commit is contained in:
undergroundwires
2022-01-21 22:34:11 +01:00
parent 0e52a99efa
commit 44d79e2c9a
100 changed files with 1380 additions and 976 deletions

View File

@@ -34,7 +34,7 @@ function getExecuteCommand(scriptPath: string, environment: Environment): string
case OperatingSystem.Windows:
return scriptPath;
default:
throw Error('undefined os');
throw Error(`unsupported os: ${OperatingSystem[environment.os]}`);
}
}

View File

@@ -27,7 +27,7 @@ implements IRepository<TKey, TEntity> {
public addItem(item: TEntity): void {
if (!item) {
throw new Error('item is null or undefined');
throw new Error('missing item');
}
if (this.exists(item.id)) {
throw new Error(`Cannot add (id: ${item.id}) as it is already exists`);
@@ -37,7 +37,7 @@ implements IRepository<TKey, TEntity> {
public addOrUpdateItem(item: TEntity): void {
if (!item) {
throw new Error('item is null or undefined');
throw new Error('missing item');
}
if (this.exists(item.id)) {
this.removeItem(item.id);