Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

major changes to data creation and connection #229

Merged
merged 30 commits into from
Jan 9, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
c1b725a
reworking Connection
julorenz Dec 23, 2021
941765d
linting
julorenz Dec 23, 2021
d0f51dc
colocating test ressources
julorenz Dec 25, 2021
1a0179f
linting
julorenz Dec 29, 2021
3f2e7a9
fixing tests ModularPlantManager
julorenz Dec 29, 2021
1554a03
updating files
julorenz Jan 2, 2022
93b4f9e
fix testing fix
julorenz Jan 4, 2022
19225b9
fixing issues and doku
julorenz Jan 4, 2022
e260a8e
refactoring feedbackMonitoringDA
julorenz Jan 4, 2022
85b768e
refactoring interlockDA
julorenz Jan 4, 2022
9946748
refactoring limitMonitoringDA
julorenz Jan 4, 2022
907d0be
refactoring OpModeDA
julorenz Jan 4, 2022
2331052
refactoring OSLevelDA
julorenz Jan 4, 2022
c26ef74
refactoring ResetDA
julorenz Jan 4, 2022
f5fea74
refactoring ScaleSettingsDA
julorenz Jan 4, 2022
d417bf2
refactoring ServiceOpModeDA
julorenz Jan 4, 2022
8e6c6d8
refactoring ServiceSourceModeDA
julorenz Jan 4, 2022
4743d87
refactoring SourceModeDA
julorenz Jan 4, 2022
862b6ce
refactoring UnitSettingsDA
julorenz Jan 4, 2022
f342730
refactoring valueLimitationDA
julorenz Jan 4, 2022
01ddd90
adding Handshake sequence
julorenz Jan 4, 2022
76c90f4
fixing rename of unitController
julorenz Jan 4, 2022
7dc1325
final adjustment to baseFunctions
julorenz Jan 4, 2022
edfe230
refactoring pimad parts
julorenz Jan 4, 2022
00f834d
updating files and tests
julorenz Jan 8, 2022
6fb21a7
linting
julorenz Jan 8, 2022
60fe06b
updating index.ts
julorenz Jan 8, 2022
e4511df
updating packages regarding ts version and linting
julorenz Jan 8, 2022
c07d854
updating api
julorenz Jan 9, 2022
b70dff1
Merge branch 'coreUpdate' into update/opcuaConnection
julorenz Jan 9, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
refactoring OpModeDA
  • Loading branch information
julorenz committed Jan 4, 2022
commit 907d0be148920e74da3798579070c3eddbadcec1
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,13 @@
*/

import {DataType, Namespace, UAObject, Variant} from 'node-opcua';
import {OpModeDAMockup} from '../../../pea/dataAssembly/_extensions/opModeDA/OpModeDA.mockup';
import {OpModeMockup} from '../../../pea/dataAssembly/_extensions/opMode/OpMode.mockup';
import {catPEAMockup} from '../../../../logging';

export abstract class PEATestVariable {

public readonly name: string;
public opMode: OpModeDAMockup;
public opMode: OpModeMockup;
public wqc = 0;
public osLevel = 0;
protected variableNode: UAObject;
Expand Down Expand Up @@ -69,6 +69,6 @@ export abstract class PEATestVariable {
}
});

this.opMode = new OpModeDAMockup(namespace, this.variableNode, variableName);
this.opMode = new OpModeMockup(namespace, this.variableNode, variableName);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
*/

import {DataType, Namespace, StatusCodes, UAObject, Variant} from 'node-opcua';
import {getOpModeDAMockupReferenceJSON, OpModeDAMockup} from '../_extensions/opModeDA/OpModeDA.mockup';
import {getOpModeMockupReferenceJSON, OpModeMockup} from '../_extensions/opMode/OpMode.mockup';
import {
getServiceSourceModeDAMockupReferenceJSON,
ServiceSourceModeDAMockup
Expand All @@ -44,7 +44,7 @@ export function getServiceControlMockupReferenceJSON(
...getWQCDAMockupReferenceJSON(namespace,objectBrowseName),
...getOSLevelDAMockupReferenceJSON(namespace,objectBrowseName),
...getServiceSourceModeDAMockupReferenceJSON(namespace,objectBrowseName),
...getOpModeDAMockupReferenceJSON(namespace,objectBrowseName),
...getOpModeMockupReferenceJSON(namespace,objectBrowseName),
CommandOp: {
namespaceIndex: `${namespace}`,
nodeId: `${objectBrowseName}.CommandOp`,
Expand Down Expand Up @@ -115,7 +115,7 @@ export function getServiceControlMockupReferenceJSON(

export class ServiceControlMockup extends DataAssemblyControllerMockup{
public serviceSourceMode: ServiceSourceModeDAMockup;
public operationMode: OpModeDAMockup;
public operationMode: OpModeMockup;
protected wqc: WQCDAMockup;

protected commandOp = 0;
Expand All @@ -138,7 +138,7 @@ export class ServiceControlMockup extends DataAssemblyControllerMockup{

constructor(namespace: Namespace, rootNode: UAObject, variableName: string){
super(namespace, rootNode, variableName);
this.operationMode = new OpModeDAMockup(namespace, this.mockupNode, variableName);
this.operationMode = new OpModeMockup(namespace, this.mockupNode, variableName);
this.serviceSourceMode = new ServiceSourceModeDAMockup(namespace, this.mockupNode, variableName);
this.wqc = new WQCDAMockup(namespace, this.mockupNode, variableName);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
@startuml
'https://plantuml.com/class-diagram
!include ../_extensions/wqcDA/WQC.puml
!include ../_extensions/opModeDA/OpModeController.puml
!include ../_extensions/opMode/OpModeController.puml
!include ../_extensions/serviceSourceModeDA/ServiceSourceModeController.puml
class ServiceControl{
+ readonly communication!: ServiceControlRuntime
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import {
BaseDataAssemblyRuntime, DataAssemblyController, OpModeRuntime, WQCRuntime
} from '../index';
import {DataAssemblyOptions} from '@p2olab/polaris-interface';
import {OpModeController, WQC} from '../_extensions';
import {OpMode, WQC} from '../_extensions';
import {
ServiceSourceModeController,
ServiceSourceModeRuntime
Expand All @@ -55,14 +55,14 @@ export type ServiceControlRuntime = BaseDataAssemblyRuntime & OpModeRuntime & Se
export class ServiceControl extends DataAssemblyController {
public readonly communication!: ServiceControlRuntime;
public readonly wqc: WQC;
public readonly opMode: OpModeController;
public readonly opMode: OpMode;
public readonly serviceSourceMode: ServiceSourceModeController;

constructor(options: DataAssemblyOptions, connection: OpcUaConnection) {
super(options, connection);

this.wqc = new WQC(this);
this.opMode = new OpModeController(this);
this.opMode = new OpMode(this);
this.serviceSourceMode = new ServiceSourceModeController(this);

this.communication.CommandOp = this.createDataItem('CommandOp', 'number', 'write');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
!include FeedbackMonitoring/FeedbackMonitoring.puml
!include Interlock/Interlock.puml
!include LimitMonitoring/LimitMonitoring.puml
!include opModeDA/OpModeController.puml
!include opMode/OpModeController.puml
!include osLevelDA/OSLevel.puml
!include resetDA/Reset.puml
!include scaleSettingsDA/ScaleSettings.puml
Expand All @@ -43,7 +43,7 @@ abstract class DataAssemblyController
DataAssemblyController "0..1" o-- FeedbackMonitoring
DataAssemblyController "0..1" o-- Interlock
DataAssemblyController "0..1" o-- LimitMonitoring
DataAssemblyController "0..1" o-- OpModeDA
DataAssemblyController "0..1" o-- OpMode
DataAssemblyController "0..1" o-- OSLevelDA
DataAssemblyController "0..1" o-- ResetDA
DataAssemblyController "0..1" o-- ScaleSettingDA
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
export * from './feedbackMonitoring/FeedbackMonitoring';
export * from './interlock/Interlock';
export * from './limitMonitoring/LimitMonitoring';
export * from './opModeDA/OpModeController';
export * from './opMode/OpMode';
export * from './osLevelDA/OSLevel';
export * from './resetDA/Reset';
export * from './scaleSettingsDA/ScaleSettings';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,31 +26,31 @@
import * as chai from 'chai';
import * as chaiAsPromised from 'chai-as-promised';
import {MockupServer} from '../../../../_utils';
import {OpModeDAMockup} from './OpModeDA.mockup';
import {OpModeMockup} from './OpMode.mockup';
import {OpcUaConnection} from '../../../connection';
import {OperationMode} from '@p2olab/polaris-interface';


chai.use(chaiAsPromised);
const expect = chai.expect;

describe('OpModeDAMockup', () => {
describe('OpModeMockup', () => {
describe('', () => {
let mockupServer: MockupServer;
beforeEach(async()=>{
mockupServer = new MockupServer();
await mockupServer.initialize();
});

it('should create OpModeDAMockup', async () => {
const mockup= new OpModeDAMockup(mockupServer.nameSpace,
it('should create OpModeMockup', async () => {
const mockup= new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
expect(mockup).to.not.be.undefined;
});
it('OpModeDAMockupReferenceJSON()', () => {
const mockup = new OpModeDAMockup(mockupServer.nameSpace,
it('OpModeMockupReferenceJSON()', () => {
const mockup = new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
const json = mockup.getOpModeDAInstanceMockupJSON() as any;
const json = mockup.getOpModeInstanceMockupJSON() as any;
expect(Object.keys(json).length).to.equal(10);
expect(json.StateChannel).to.not.be.undefined;
expect(json.StateOffAut).to.not.be.undefined;
Expand All @@ -65,17 +65,17 @@ describe('OpModeDAMockup', () => {
});

it('get stateOpAct', async () => {
const mockup= new OpModeDAMockup(mockupServer.nameSpace,
const mockup= new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
expect(mockup.stateOpAct).to.be.false;
});
it('get stateAutAct', async () => {
const mockup= new OpModeDAMockup(mockupServer.nameSpace,
const mockup= new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
expect(mockup.stateAutAct).to.be.false;
});
it('get stateOffAct', async () => {
const mockup= new OpModeDAMockup(mockupServer.nameSpace,
const mockup= new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
expect(mockup.stateOffAct).to.be.true;
});
Expand All @@ -84,13 +84,13 @@ describe('OpModeDAMockup', () => {
describe('dynamic', () => {

let mockupServer: MockupServer;
let mockup: OpModeDAMockup;
let mockup: OpModeMockup;
let connection: OpcUaConnection;
beforeEach(async function () {
this.timeout(10000);
mockupServer = new MockupServer();
await mockupServer.initialize();
mockup = new OpModeDAMockup(mockupServer.nameSpace,
mockup = new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
await mockupServer.start();
connection = new OpcUaConnection();
Expand Down Expand Up @@ -153,14 +153,14 @@ describe('OpModeDAMockup', () => {
describe('dynamic', () => {

let mockupServer: MockupServer;
let mockup: OpModeDAMockup;
let mockup: OpModeMockup;
let connection: OpcUaConnection;

beforeEach(async function () {
this.timeout(10000);
mockupServer = new MockupServer();
await mockupServer.initialize();
mockup = new OpModeDAMockup(mockupServer.nameSpace,
mockup = new OpModeMockup(mockupServer.nameSpace,
mockupServer.rootObject, 'Variable');
mockup.stateChannel = true;
await mockupServer.start();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import {OperationMode} from '@p2olab/polaris-interface';
import {DataType, Namespace, StatusCodes, UAObject, Variant} from 'node-opcua';

export function getOpModeDAMockupReferenceJSON(
export function getOpModeMockupReferenceJSON(
namespace: number,
objectBrowseName: string): object {

Expand Down Expand Up @@ -85,7 +85,7 @@ export function getOpModeDAMockupReferenceJSON(
);
}

export class OpModeDAMockup {
export class OpModeMockup {
public opMode: OperationMode = OperationMode.Offline;
public stateChannel = false;
public stateOffAut = false;
Expand Down Expand Up @@ -259,8 +259,8 @@ export class OpModeDAMockup {
return this.opMode === OperationMode.Offline;
}

public getOpModeDAInstanceMockupJSON(): object {
return getOpModeDAMockupReferenceJSON(
public getOpModeInstanceMockupJSON(): object {
return getOpModeMockupReferenceJSON(
this.mockupNode.namespaceIndex,
this.mockupNode.browseName.name as string);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ enum OperationMode{
Automatic
}

class OpModeController{
class OpMode{
- dAController: any
- initialize(): void
+ getOperationMode(): OperationMode
Expand All @@ -60,9 +60,9 @@ class OpModeController{
+ isAutomaticState(): boolean
}

OpModeRuntime <-- OpModeController
OperationMode <-- OpModeController
OpModeControllerSpec --> OpModeController : <<uses>>
OpModeControllerSpec --> OpModeControllerMockup : <<uses>>
OpModeRuntime <-- OpMode
OperationMode <-- OpMode
OpModeSpec --> OpMode : <<uses>>
OpModeSpec --> OpModeMockup : <<uses>>

@enduml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ import {DataAssemblyOptions, OperationMode} from '@p2olab/polaris-interface';
import * as baseDataAssemblyOptions from '../../operationElement/servParam/anaServParam/AnaServParam.spec.json';
import {DataAssemblyController} from '../../DataAssemblyController';
import {MockupServer} from '../../../../_utils';
import {OpModeDAMockup} from './OpModeDA.mockup';
import {OpModeController} from './OpModeController';
import {OpModeMockup} from './OpMode.mockup';
import {OpMode} from './OpMode';

chai.use(chaiAsPromised);
const expect = chai.expect;
Expand All @@ -45,10 +45,10 @@ describe('OpMode', () => {

describe('static', () => {
const emptyOPCUAConnection = new OpcUaConnection();
it('should create OpModeController', () => {
it('should create OpMode', () => {

const da = new DataAssemblyController(dataAssemblyOptions, emptyOPCUAConnection) as any;
const opMode = new OpModeController(da);
const opMode = new OpMode(da);

expect(opMode).to.not.be.undefined;
expect((da).communication.StateChannel).to.not.be.undefined;
Expand All @@ -72,7 +72,7 @@ describe('OpMode', () => {
this.timeout(4000);
mockupServer = new MockupServer();
await mockupServer.initialize();
new OpModeDAMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable');
new OpModeMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable');
await mockupServer.start();
connection = new OpcUaConnection();
connection.initialize({endpoint: mockupServer.endpoint});
Expand All @@ -88,7 +88,7 @@ describe('OpMode', () => {
it('should subscribe successfully', async () => {

const dataAssemblyController = new DataAssemblyController(dataAssemblyOptions, connection) as any;
new OpModeController(dataAssemblyController);
new OpMode(dataAssemblyController);
await dataAssemblyController.subscribe();
await connection.startMonitoring();
await new Promise((resolve => dataAssemblyController.on('changed', resolve)));
Expand All @@ -109,20 +109,20 @@ describe('OpMode', () => {
describe('dynamic functions, Offline', async () => {
let mockupServer: MockupServer;
let connection: OpcUaConnection;
let mockup: OpModeDAMockup;
let opMode: OpModeController;
let mockup: OpModeMockup;
let opMode: OpMode;
let dataAssemblyController: any;

beforeEach(async function () {
mockupServer = new MockupServer();
await mockupServer.initialize();
mockup = new OpModeDAMockup(mockupServer.nameSpace, mockupServer.rootObject,'Variable');
mockup = new OpModeMockup(mockupServer.nameSpace, mockupServer.rootObject,'Variable');
await mockupServer.start();
connection = new OpcUaConnection();
connection.initialize({endpoint: mockupServer.endpoint});

dataAssemblyController = new DataAssemblyController(dataAssemblyOptions, connection) as any;
opMode = new OpModeController(dataAssemblyController);
opMode = new OpMode(dataAssemblyController);
await connection.connect();
await dataAssemblyController.subscribe();
await connection.startMonitoring();
Expand Down Expand Up @@ -169,21 +169,21 @@ describe('OpMode', () => {
describe('dynamic functions, Operator', async () => {
let mockupServer: MockupServer;
let connection: OpcUaConnection;
let mockup: OpModeDAMockup;
let opMode: OpModeController;
let mockup: OpModeMockup;
let opMode: OpMode;
let dataAssemblyController: any;

beforeEach(async function () {
mockupServer = new MockupServer();
await mockupServer.initialize();
// initialize with Operator OperationMode
mockup = new OpModeDAMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable', OperationMode.Operator);
mockup = new OpModeMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable', OperationMode.Operator);
await mockupServer.start();
connection = new OpcUaConnection();
connection.initialize({endpoint: mockupServer.endpoint});

dataAssemblyController = new DataAssemblyController(dataAssemblyOptions, connection) as any;
opMode = new OpModeController(dataAssemblyController);
opMode = new OpMode(dataAssemblyController);
await connection.connect();
await dataAssemblyController.subscribe();
await connection.startMonitoring();
Expand Down Expand Up @@ -219,20 +219,20 @@ describe('OpMode', () => {
describe('dynamic functions, Automatic', async () => {
let mockupServer: MockupServer;
let connection: OpcUaConnection;
let mockup: OpModeDAMockup;
let opMode: OpModeController;
let mockup: OpModeMockup;
let opMode: OpMode;
let dataAssemblyController: any;

beforeEach(async function () {
mockupServer = new MockupServer();
await mockupServer.initialize();
// initialize with Automatic OperationMode
mockup = new OpModeDAMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable', OperationMode.Automatic);
mockup = new OpModeMockup(mockupServer.nameSpace, mockupServer.rootObject, 'Variable', OperationMode.Automatic);
await mockupServer.start();
connection = new OpcUaConnection();
connection.initialize({endpoint: mockupServer.endpoint});
dataAssemblyController = new DataAssemblyController(dataAssemblyOptions, connection) as any;
opMode = new OpModeController(dataAssemblyController);
opMode = new OpMode(dataAssemblyController);
await connection.connect();
await dataAssemblyController.subscribe();
await connection.startMonitoring();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ export type OpModeRuntime = BaseDataAssemblyRuntime & {
StateOffAct: DataItem<boolean>;
};

export class OpModeController {
export class OpMode {

private dAController: any;

Expand Down
Loading