feat: #2685 Support class member initialization by member definition

This commit is contained in:
Sidharth Vinod 2023-08-28 18:57:34 +05:30
parent eca0cea339
commit c3df18fc5b
No known key found for this signature in database
GPG Key ID: FB5CCD378D3907CD
2 changed files with 18 additions and 0 deletions

View File

@ -174,6 +174,8 @@ export const addAnnotation = function (className: string, annotation: string) {
* @public
*/
export const addMember = function (className: string, member: string) {
addClass(className);
const validatedClassName = splitClassNameAndType(className).className;
const theClass = classes[validatedClassName];

View File

@ -742,6 +742,22 @@ describe('given a class diagram with members and methods ', function () {
parser.parse(str);
});
it('should handle direct member declaration', function () {
const str = 'classDiagram\n' + 'Car : wheels';
parser.parse(str);
expect(classDb.getClasses()).toHaveProperty('Car');
expect(classDb.getClasses()['Car']['members']).toContain('wheels');
});
it('should handle direct member declaration with type', function () {
const str = 'classDiagram\n' + 'Car : int wheels';
parser.parse(str);
expect(classDb.getClasses()).toHaveProperty('Car');
expect(classDb.getClasses()['Car']['members']).toContain('int wheels');
});
it('should handle simple member declaration with type', function () {
const str = 'classDiagram\n' + 'class Car\n' + 'Car : int wheels';