Skip to content

Commit

Permalink
Added additional tests
Browse files Browse the repository at this point in the history
  • Loading branch information
rmathis committed Dec 11, 2018
1 parent f41025e commit 1440ee5
Show file tree
Hide file tree
Showing 3 changed files with 362 additions and 0 deletions.
122 changes: 122 additions & 0 deletions ui/src/app/metadata/provider/model/dynamic-http.provider.form.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
import { DynamicHttpMetadataProviderWizard } from './dynamic-http.provider.form';


describe('DynamicHttpMetadataProviderWizard', () => {

const parser = DynamicHttpMetadataProviderWizard.parser;
const formatter = DynamicHttpMetadataProviderWizard.formatter;
const getValidators = DynamicHttpMetadataProviderWizard.getValidators;

const requiredValidUntilFilter = {
maxValidityInterval: 1,
'@type': 'RequiredValidUntil'
};

const signatureValidationFilter = {
requireSignedRoot: true,
certificateFile: 'foo',
'@type': 'SignatureValidation'
};

const entityRoleWhiteListFilter = {
retainedRoles: ['foo', 'bar'],
removeRolelessEntityDescriptors: true,
removeEmptyEntitiesDescriptors: true,
'@type': 'EntityRoleWhiteList'
};

describe('parser', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'DynamicHttpMetadataResolver',
enabled: true,
resourceId: 'foo',
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
};
expect(
parser(model)
).toEqual(
{
...model,
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'DynamicHttpMetadataResolver',
enabled: true,
resourceId: 'foo'
};
expect(
parser(model)
).toEqual(
model
);
});
});

describe('formatter', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'DynamicHttpMetadataResolver',
enabled: true,
resourceId: 'foo',
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
};
expect(
formatter(model)
).toEqual(
{
...model,
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'DynamicHttpMetadataResolver',
enabled: true,
resourceId: 'foo'
};
expect(
formatter(model)
).toEqual(
model
);
});
});

describe('getValidators method', () => {
it('should return a list of validators for the ngx-schema-form', () => {
expect(Object.keys(getValidators([]))).toEqual([
'/',
'/name',
'/xmlId',
'/metadataURL'
]);
});
});
});
120 changes: 120 additions & 0 deletions ui/src/app/metadata/provider/model/file-system.provider.form.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
import { FileSystemMetadataProviderWizard } from './file-system.provider.form';

describe('FileSystemMetadataProviderWizard', () => {

const parser = FileSystemMetadataProviderWizard.parser;
const formatter = FileSystemMetadataProviderWizard.formatter;
const getValidators = FileSystemMetadataProviderWizard.getValidators;

const requiredValidUntilFilter = {
maxValidityInterval: 1,
'@type': 'RequiredValidUntil'
};

const signatureValidationFilter = {
requireSignedRoot: true,
certificateFile: 'foo',
'@type': 'SignatureValidation'
};

const entityRoleWhiteListFilter = {
retainedRoles: ['foo', 'bar'],
removeRolelessEntityDescriptors: true,
removeEmptyEntitiesDescriptors: true,
'@type': 'EntityRoleWhiteList'
};

describe('parser', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'FileSystemMetadataProvider',
enabled: true,
resourceId: 'foo',
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
};
expect(
parser(model)
).toEqual(
{
...model,
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'FileSystemMetadataProvider',
enabled: true,
resourceId: 'foo'
};
expect(
parser(model)
).toEqual(
model
);
});
});

describe('formatter', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'FileSystemMetadataProvider',
enabled: true,
resourceId: 'foo',
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
};
expect(
formatter(model)
).toEqual(
{
...model,
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'FileSystemMetadataProvider',
enabled: true,
resourceId: 'foo'
};
expect(
formatter(model)
).toEqual(
model
);
});
});

describe('getValidators method', () => {
it('should return a list of validators for the ngx-schema-form', () => {
expect(Object.keys(getValidators([]))).toEqual([
'/',
'/name',
'/xmlId'
]);
});
});
});
120 changes: 120 additions & 0 deletions ui/src/app/metadata/provider/model/local-dynamic.provider.form.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
import { LocalDynamicMetadataProviderWizard } from './local-dynamic.provider.form';

describe('LocalDynamicMetadataProviderWizard', () => {

const parser = LocalDynamicMetadataProviderWizard.parser;
const formatter = LocalDynamicMetadataProviderWizard.formatter;
const getValidators = LocalDynamicMetadataProviderWizard.getValidators;

const requiredValidUntilFilter = {
maxValidityInterval: 1,
'@type': 'RequiredValidUntil'
};

const signatureValidationFilter = {
requireSignedRoot: true,
certificateFile: 'foo',
'@type': 'SignatureValidation'
};

const entityRoleWhiteListFilter = {
retainedRoles: ['foo', 'bar'],
removeRolelessEntityDescriptors: true,
removeEmptyEntitiesDescriptors: true,
'@type': 'EntityRoleWhiteList'
};

describe('parser', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'LocalDynamicMetadataResolver',
enabled: true,
resourceId: 'foo',
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
};
expect(
parser(model)
).toEqual(
{
...model,
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'LocalDynamicMetadataResolver',
enabled: true,
resourceId: 'foo'
};
expect(
parser(model)
).toEqual(
model
);
});
});

describe('formatter', () => {
it('should transform the filters object to an array', () => {
let model = <any>{
name: 'foo',
'@type': 'LocalDynamicMetadataResolver',
enabled: true,
resourceId: 'foo',
metadataFilters: [
requiredValidUntilFilter,
signatureValidationFilter,
entityRoleWhiteListFilter
]
};
expect(
formatter(model)
).toEqual(
{
...model,
metadataFilters: {
RequiredValidUntil: requiredValidUntilFilter,
SignatureValidation: signatureValidationFilter,
EntityRoleWhiteList: entityRoleWhiteListFilter
}
}
);
});

it('should return the object if metadataFilters is not provided', () => {
let model = <any>{
name: 'foo',
'@type': 'LocalDynamicMetadataResolver',
enabled: true,
resourceId: 'foo'
};
expect(
formatter(model)
).toEqual(
model
);
});
});

describe('getValidators method', () => {
it('should return a list of validators for the ngx-schema-form', () => {
expect(Object.keys(getValidators([]))).toEqual([
'/',
'/name',
'/xmlId'
]);
});
});
});

0 comments on commit 1440ee5

Please sign in to comment.