Skip to content

Commit 544438c

Browse files
authored
fix(cdk/testing): make setContenteditableValue required (#32058)
Makes the `TestElement.setContenteditableValue` method required. BREAKING CHANGE: * `TestElement` implementations need to provide a `setContenteditableValue`.
1 parent 4d3710d commit 544438c

File tree

4 files changed

+3
-16
lines changed

4 files changed

+3
-16
lines changed

goldens/cdk/testing/index.api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ export interface TestElement {
230230
selectOptions(...optionIndexes: number[]): Promise<void>;
231231
sendKeys(...keys: (string | TestKey)[]): Promise<void>;
232232
sendKeys(modifiers: ModifierKeys, ...keys: (string | TestKey)[]): Promise<void>;
233-
setContenteditableValue?(value: string): Promise<void>;
233+
setContenteditableValue(value: string): Promise<void>;
234234
setInputValue(value: string): Promise<void>;
235235
text(options?: TextOptions): Promise<string>;
236236
}

src/cdk/testing/test-element.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,9 +141,8 @@ export interface TestElement {
141141
/**
142142
* Sets the value of a `contenteditable` element.
143143
* @param value Value to be set on the element.
144-
* @breaking-change 16.0.0 Will become a required method.
145144
*/
146-
setContenteditableValue?(value: string): Promise<void>;
145+
setContenteditableValue(value: string): Promise<void>;
147146

148147
/** Gets the value for the given attribute from the element. */
149148
getAttribute(name: string): Promise<string | null>;

src/cdk/testing/tests/cross-environment.spec.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -713,9 +713,7 @@ export function crossEnvironmentSpecs(
713713
const element = await harness.contenteditable();
714714
expect(await element.text()).not.toBe('hello');
715715

716-
// @breaking-change 16.0.0 Remove non-null assertion once `setContenteditableValue`
717-
// becomes a required method.
718-
await element.setContenteditableValue!('hello');
716+
await element.setContenteditableValue('hello');
719717

720718
expect(await element.text()).toBe('hello');
721719
});

src/material/chips/testing/chip-edit-input-harness.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,6 @@ export class MatChipEditInputHarness extends ComponentHarness {
3333
/** Sets the value of the input. */
3434
async setValue(value: string): Promise<void> {
3535
const host = await this.host();
36-
37-
// @breaking-change 16.0.0 Remove this null check once `setContenteditableValue`
38-
// becomes a required method.
39-
if (!host.setContenteditableValue) {
40-
throw new Error(
41-
'Cannot set chip edit input value, because test ' +
42-
'element does not implement the `setContenteditableValue` method.',
43-
);
44-
}
45-
4636
return host.setContenteditableValue(value);
4737
}
4838
}

0 commit comments

Comments
 (0)