Skip to content

Commit 7558102

Browse files
authored
Merge pull request #62 from com-pas/test/fix-plugins-tests
chore: Fix plugins tests
2 parents c0caa8f + c3d37c4 commit 7558102

222 files changed

Lines changed: 5845 additions & 1876 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

package-lock.json

Lines changed: 701 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/openscd/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
"./dist/wizard-textfield.js": "./dist/wizard-textfield.js",
4646
"./dist/wizard-checkbox.js": "./dist/wizard-checkbox.js",
4747
"./dist/wizard-select.js": "./dist/wizard-select.js",
48+
"./dist/wizard-dialog.js": "./dist/wizard-dialog.js",
4849
"./dist/WizardDivider.js": "./dist/WizardDivider.js",
4950
"./dist/wizards.js": "./dist/wizards.js",
5051
"./dist/oscd-filter-button.js": "./dist/oscd-filter-button.js",

packages/openscd/src/filtered-list.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,10 @@ export class FilteredList extends LitElement {
108108
return this.list.selected;
109109
}
110110

111+
get index() {
112+
return this.list.index;
113+
}
114+
111115
private onCheckAll(): void {
112116
const select = !this.isAllSelected;
113117
this.items
@@ -125,6 +129,10 @@ export class FilteredList extends LitElement {
125129
);
126130
}
127131

132+
layout(updateItems?: boolean): void {
133+
this.list.layout(updateItems);
134+
}
135+
128136
protected update(
129137
changedProperties: Map<string | number | symbol, unknown>
130138
): void {

packages/openscd/src/wizard-textfield.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ export class WizardTextField extends LitElement {
4545
disabled = false;
4646
@property({ type: Boolean })
4747
required = false;
48+
@property({ type: Boolean })
49+
readOnly = false;
4850
@property({ type: String })
4951
label = '';
5052
@property({ type: Boolean })
@@ -228,6 +230,7 @@ export class WizardTextField extends LitElement {
228230
.helperPersistent=${this.helperPersistent}
229231
.disabled=${this.disabled}
230232
.required=${this.required}
233+
.readOnly=${this.readOnly}
231234
label=${this.label}
232235
helper="${ifDefined(this.helper)}"
233236
validationMessage="${ifDefined(this.helper)}"

packages/plugins/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,7 @@
4949
"format:prettier": "prettier \"**/*.js\" \"**/*.ts\" --write --ignore-path .gitignore",
5050
"lint": "npm run lint:eslint && npm run lint:prettier",
5151
"format": "npm run format:eslint && npm run format:prettier",
52-
"TODO": "ignore tests for now, imports have to be adjusted when plugins package is migrated",
53-
"test": "web-test-runner --coverage || exit 0",
52+
"test": "web-test-runner --coverage",
5453
"test:snapshot": "web-test-runner --update-snapshots --coverage",
5554
"test:manual": "web-test-runner --manual",
5655
"test:watch": "web-test-runner --watch",
@@ -81,6 +80,7 @@
8180
"@web/dev-server-esbuild": "^0.2.16",
8281
"@web/test-runner": "^0.13.22",
8382
"@web/test-runner-playwright": "^0.11.0",
83+
"@web/dev-server-polyfill": "^1.0.6",
8484
"concurrently": "^6.2.1",
8585
"deepmerge": "^4.2.2",
8686
"es-dev-server": "^2.1.0",

packages/plugins/src/editors/cleanup/control-blocks-container.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import { List, MWCListIndex } from '@material/mwc-list';
2525
import { ListItem } from '@material/mwc-list/mwc-list-item.js';
2626

2727
import '@compas-oscd/open-scd/dist/filtered-list.js';
28+
import { FilteredList } from '@compas-oscd/open-scd/dist/filtered-list.js';
2829

2930
import {
3031
identity,
@@ -87,13 +88,13 @@ export class CleanupControlBlocks extends LitElement {
8788
unreferencedControls: Element[] = [];
8889

8990
@property({ attribute: false })
90-
selectedControlItems: MWCListIndex | [] = [];
91+
selectedControlItems: MWCListIndex = new Set<number>();
9192

9293
@query('.deleteButton')
9394
cleanButton!: Button;
9495

9596
@query('.cleanupList')
96-
cleanupList: List | undefined;
97+
cleanupList: FilteredList | undefined;
9798

9899
@queryAll('mwc-check-list-item.cleanupListItem')
99100
cleanupListItems: ListItem[] | undefined;
@@ -130,7 +131,7 @@ export class CleanupControlBlocks extends LitElement {
130131
*/
131132
async firstUpdated(): Promise<void> {
132133
this.cleanupList?.addEventListener('selected', () => {
133-
this.selectedControlItems = this.cleanupList!.index;
134+
this.selectedControlItems = this.cleanupList!.list.index;
134135
});
135136
this.toggleHiddenClass('tReportControl');
136137
}

packages/plugins/src/editors/cleanup/datasets-container.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ export class CleanupDatasets extends LitElement {
4848
unreferencedDataSets: Element[] = [];
4949

5050
@property({ attribute: false })
51-
selectedDatasetItems: MWCListIndex | [] = [];
51+
selectedDatasetItems: MWCListIndex = new Set<number>();
5252

5353
@query('.deleteButton')
5454
cleanupButton!: Button;

packages/plugins/src/editors/protocol104/connectedap-editor.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class ConnectedAP104Editor extends Base104Container {
1515
@property({ attribute: false })
1616
element!: Element;
1717

18-
private openEditWizard(): void {
18+
openEditWizard(): void {
1919
this.dispatchEvent(
2020
newWizardEvent(() =>
2121
editConnectedApWizard(

packages/plugins/src/menu/UpdateDescriptionSEL.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import { css, html, LitElement, query, TemplateResult } from 'lit-element';
1+
import { css, LitElement, query, html, TemplateResult } from 'lit-element';
22
import { get } from 'lit-translate';
33

44
import '@material/mwc-list/mwc-check-list-item';
55
import { List } from '@material/mwc-list';
66
import { ListItemBase } from '@material/mwc-list/mwc-list-item-base';
77

8+
import { oscdHtml } from '@compas-oscd/open-scd/dist/foundation.js';
89
import '@compas-oscd/open-scd/dist/filtered-list.js';
910
import {
1011
find,
@@ -66,7 +67,7 @@ function addDescriptionAction(doc: XMLDocument): WizardActor {
6667
wizard: Element,
6768
list: List | null | undefined
6869
): WizardAction[] => {
69-
const selectedItems = <ListItemBase[]>list!.selected;
70+
const selectedItems = <ListItemBase[]>list?.selected ?? [];
7071

7172
const actions = selectedItems.map(item => {
7273
const desc = (<Element>item.querySelector('span')).textContent;
@@ -96,11 +97,11 @@ function createLogWizard(doc: XMLDocument, items: SignalDescription[]): Wizard {
9697
action: addDescriptionAction(doc),
9798
},
9899
content: [
99-
html`<filtered-list multi
100+
oscdHtml`<filtered-list multi
100101
>${Array.from(
101102
items.map(
102103
item =>
103-
html`<mwc-check-list-item
104+
oscdHtml`<mwc-check-list-item
104105
twoline
105106
selected
106107
value="${item.tag + ' | ' + item.identity}"

packages/plugins/src/wizards/abstractda.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,9 @@ import { WizardTextField } from '@compas-oscd/open-scd/dist/wizard-textfield.js'
1919
import { maxLength, patterns } from './foundation/limits.js';
2020
import { predefinedBasicTypeEnum, valKindEnum } from './foundation/enums.js';
2121

22-
function selectType(e: SelectedEvent, data: Element, Val: string | null): void {
23-
if (!e.target || !(e.target as Select).parentElement) return;
22+
function selectType(e: SelectedEvent, typeSelected: string | null, data: Element, Val: string | null): void {
23+
if (!e.target || !(e.target as Select).parentElement || !typeSelected) return;
2424

25-
const typeSelected = (<Select>e.target).selected?.value;
2625
const selectedBType = (<WizardSelect>(
2726
(<Select>e.target).parentElement!.querySelector(
2827
'wizard-select[label="bType"]'
@@ -53,11 +52,10 @@ function selectType(e: SelectedEvent, data: Element, Val: string | null): void {
5352

5453
function selectBType(
5554
e: SelectedEvent,
55+
bTypeSelected: string,
5656
bType: string | null,
5757
type: string | null
5858
): void {
59-
const bTypeSelected = (<Select>e.target).selected!.value;
60-
6159
const typeUI = <Select>(
6260
(<Select>e.target).parentElement!.querySelector(
6361
'wizard-select[label="type"]'
@@ -136,7 +134,7 @@ export function wizardContent(
136134
.value=${bType}
137135
helper="${get('scl.bType')}"
138136
required
139-
@selected=${(e: SelectedEvent) => selectBType(e, bType, type)}
137+
@selected=${(e: SelectedEvent) => selectBType(e, predefinedBasicTypeEnum[e.detail.index as number], bType, type)}
140138
>${predefinedBasicTypeEnum.map(
141139
redefinedBType =>
142140
html`<mwc-list-item value="${redefinedBType}"
@@ -149,7 +147,7 @@ export function wizardContent(
149147
.maybeValue=${type}
150148
helper="${get('scl.type')}"
151149
fixedMenuPosition
152-
@selected=${(e: SelectedEvent) => selectType(e, data, Val)}
150+
@selected=${(e: SelectedEvent) => selectType(e, types[e.detail.index as number]?.id, data, Val)}
153151
>${types.map(
154152
dataType =>
155153
oscdHtml`<mwc-list-item

0 commit comments

Comments
 (0)