/*
* Copyright (C) 2019 StApps
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation, version 3.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see .
*/
import {LightweightClassDefinition} from '../../src/uml/model/lightweight-class-definition';
import {LightweightDefinition} from '../../src/uml/model/lightweight-definition';
import {LightweightEnumDefinition} from '../../src/uml/model/lightweight-enum-definition';
export const generatedModel: Array = [
{
name: 'TestClass',
type: 'class',
properties: [
{
name: 'test2',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: true,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'T',
},
},
{
name: 'test4',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestFirstUnion',
},
},
],
extendedDefinitions: [],
implementedDefinitions: [],
typeParameters: ['T'],
},
{
name: 'TestSecondClass',
type: 'class',
properties: [
{
name: 'test2',
optional: false,
inherited: true,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: true,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'string',
},
},
{
name: 'test4',
optional: false,
inherited: true,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestFirstUnion',
},
},
],
extendedDefinitions: ['TestClass'],
implementedDefinitions: [],
typeParameters: [],
},
{
name: 'TestFirstEnum',
values: ['TEST1', 'TEST2', 'TEST3'],
},
{
name: 'TestSecondEnum',
values: ['TEST1 = "one"', 'TEST2 = "two"', 'TEST3 = "three"'],
},
{
name: 'TestInterface',
type: 'interface',
properties: [
{
name: 'articleBody',
optional: false,
inherited: false,
type: {
hasTypeInformation: false,
isArray: true,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: true,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'string',
},
],
genericsTypes: [],
name: 'string',
},
},
{
name: 'categorySpecificValues',
optional: true,
inherited: false,
type: {
hasTypeInformation: false,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: true,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'object',
},
},
{
name: 'inputType',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: true,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'multipleChoice',
},
},
{
name: 'maintainer',
optional: false,
inherited: false,
type: {
hasTypeInformation: false,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: true,
specificationTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestThirdUnion',
},
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestFirstEnum',
},
],
genericsTypes: [],
name: '',
},
},
{
name: 'remainingAttendeeCapacity',
optional: true,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: true,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'number',
},
},
{
name: 'test1',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: true,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [
{
hasTypeInformation: false,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: true,
specificationTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestThirdUnion',
},
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestFirstEnum',
},
],
genericsTypes: [],
name: '',
},
],
name: 'Array',
},
},
{
name: 'test2',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: true,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: true,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'string',
},
],
name: 'TestClass',
},
},
{
name: 'test3',
optional: false,
inherited: false,
type: {
hasTypeInformation: false,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: true,
specificationTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: true,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'test1',
},
{
hasTypeInformation: true,
isArray: false,
isLiteral: true,
isPrimitive: false,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'test2',
},
],
genericsTypes: [],
name: '',
},
},
{
name: 'test4',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestSecondClass',
},
},
{
name: 'universityRole',
optional: false,
inherited: false,
type: {
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: true,
isReference: false,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [
{
hasTypeInformation: true,
isArray: false,
isLiteral: false,
isPrimitive: false,
isReference: true,
isReflection: false,
isTyped: false,
isTypeParameter: false,
isUnion: false,
specificationTypes: [],
genericsTypes: [],
name: 'TestFirstEnum',
},
],
genericsTypes: [],
name: 'keyof TestFirstEnum',
},
},
],
extendedDefinitions: [],
implementedDefinitions: [],
typeParameters: [],
},
{
name: 'TestSecondInterface',
type: 'interface',
properties: [],
extendedDefinitions: [],
implementedDefinitions: [],
typeParameters: [],
},
{
name: 'TestFirstUnion',
values: ['test1', 'test2'],
},
{
name: 'TestFourthUnion',
values: [],
},
{
name: 'TestSecondUnion',
values: ['test3'],
},
{
name: 'TestThirdUnion',
values: ['TestFirstUnion', 'TestSecondUnion'],
},
];