mirror of
https://github.com/The-Low-Code-Foundation/OpenNoodl.git
synced 2026-01-11 23:02:56 +01:00
Co-Authored-By: Eric Tuvesson <eric.tuvesson@gmail.com> Co-Authored-By: mikaeltellhed <2311083+mikaeltellhed@users.noreply.github.com> Co-Authored-By: kotte <14197736+mrtamagotchi@users.noreply.github.com> Co-Authored-By: Anders Larsson <64838990+anders-topp@users.noreply.github.com> Co-Authored-By: Johan <4934465+joolsus@users.noreply.github.com> Co-Authored-By: Tore Knudsen <18231882+torekndsn@users.noreply.github.com> Co-Authored-By: victoratndl <99176179+victoratndl@users.noreply.github.com>
90 lines
1.9 KiB
JavaScript
90 lines
1.9 KiB
JavaScript
const { ProjectModel } = require('@noodl-models/projectmodel');
|
|
|
|
describe('Dynamic ports from viewer tests', function () {
|
|
// Setup
|
|
var projectJSON = {
|
|
components: [
|
|
{
|
|
name: 'Root',
|
|
graph: {
|
|
connections: [
|
|
{
|
|
fromId: 'A',
|
|
fromProperty: 'dynaA',
|
|
toId: 'B',
|
|
toProperty: 'x'
|
|
},
|
|
{
|
|
fromId: 'B',
|
|
fromProperty: 'y',
|
|
toId: 'A',
|
|
toProperty: 'dynaB'
|
|
}
|
|
],
|
|
roots: [
|
|
{
|
|
type: 'rectangle',
|
|
id: 'A',
|
|
parameters: {
|
|
dynaA: 10,
|
|
dynaB: 'hej'
|
|
}
|
|
},
|
|
{
|
|
type: 'rectangle',
|
|
id: 'B'
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
};
|
|
|
|
var project = ProjectModel.fromJSON(projectJSON);
|
|
|
|
it('can rename inputs', function () {
|
|
var n = project.findNodeWithId('A');
|
|
|
|
n.setDynamicPorts([
|
|
{
|
|
name: 'dynaA',
|
|
type: 'number'
|
|
},
|
|
{
|
|
name: 'dynaB',
|
|
type: 'string'
|
|
}
|
|
]);
|
|
|
|
// Now renamed
|
|
n.setDynamicPorts(
|
|
[
|
|
{
|
|
name: 'bosseA',
|
|
type: 'number'
|
|
},
|
|
{
|
|
name: 'bosseB',
|
|
type: 'string'
|
|
}
|
|
],
|
|
{
|
|
renamed: {
|
|
plug: 'input',
|
|
patterns: ['{{*}}A', '{{*}}B'],
|
|
before: 'dyna',
|
|
after: 'bosse'
|
|
}
|
|
}
|
|
);
|
|
|
|
expect(n.parameters['bosseA']).toBe(10);
|
|
expect(n.parameters['bosseB']).toBe('hej');
|
|
expect(n.parameters['dynaA']).toBe(undefined);
|
|
expect(n.parameters['dynaB']).toBe(undefined);
|
|
|
|
expect(project.getComponentWithName('Root').graph.connections[0].fromProperty).toBe('bosseA');
|
|
expect(project.getComponentWithName('Root').graph.connections[1].toProperty).toBe('bosseB');
|
|
});
|
|
});
|