| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- using Microsoft.Playwright;
- namespace Tests.E2e.PageObjectModels;
- public class LabelsPom(IPage page)
- {
- public ILocator Root(string testIdPrefix)
- => page.GetByTestId($"{testIdPrefix}-resource-label-editor");
- public ILocator AddButton(string testIdPrefix)
- => Root(testIdPrefix).GetByTestId($"{testIdPrefix}-resource-label-editor-add");
- public ILocator Label(string testIdPrefix, string key)
- => Root(testIdPrefix).GetByTestId($"{testIdPrefix}-resource-label-editor-label-{key}");
- public ILocator LabelViewButton(string testIdPrefix, string key)
- => Root(testIdPrefix).GetByTestId($"{testIdPrefix}-resource-label-editor-label-{key}-view");
- public ILocator RemoveLabelButton(string testIdPrefix, string key)
- => Root(testIdPrefix).GetByTestId($"{testIdPrefix}-resource-label-editor-label-{key}-remove");
- public ILocator ModalKeyInput(string testIdPrefix)
- => page.GetByTestId($"{testIdPrefix}-resource-label-editor-key-value-modal-key-input");
- public ILocator ModalValueInput(string testIdPrefix)
- => page.GetByTestId($"{testIdPrefix}-resource-label-editor-key-value-modal-value-input");
- public ILocator ModalSubmit(string testIdPrefix)
- => page.GetByTestId($"{testIdPrefix}-resource-label-editor-key-value-modal-submit");
- public async Task AddLabelAsync(string testIdPrefix, string key, string value)
- {
- await AddButton(testIdPrefix).ClickAsync();
- await Assertions.Expect(ModalKeyInput(testIdPrefix)).ToBeVisibleAsync();
- await ModalKeyInput(testIdPrefix).FillAsync(key);
- await ModalValueInput(testIdPrefix).FillAsync(value);
- await ModalSubmit(testIdPrefix).ClickAsync();
- }
- public async Task EditLabelAsync(string testIdPrefix, string existingKey, string newKey, string newValue)
- {
- await LabelViewButton(testIdPrefix, existingKey).ClickAsync();
- await Assertions.Expect(ModalKeyInput(testIdPrefix)).ToBeVisibleAsync();
- await ModalKeyInput(testIdPrefix).FillAsync(newKey);
- await ModalValueInput(testIdPrefix).FillAsync(newValue);
- await ModalSubmit(testIdPrefix).ClickAsync();
- }
- public async Task RemoveLabelAsync(string testIdPrefix, string key)
- {
- await RemoveLabelButton(testIdPrefix, key).ClickAsync();
- }
- public async Task AssertLabelVisibleAsync(string testIdPrefix, string key)
- {
- await Assertions.Expect(Label(testIdPrefix, key)).ToBeVisibleAsync();
- }
- public async Task AssertLabelNotVisibleAsync(string testIdPrefix, string key)
- {
- await Assertions.Expect(Label(testIdPrefix, key)).Not.ToBeVisibleAsync();
- }
- public async Task AssertLabelDisplaysAsync(string testIdPrefix, string key, string expectedValue)
- {
- var locator = Label(testIdPrefix, key);
- await Assertions.Expect(locator).ToBeVisibleAsync();
- await Assertions.Expect(locator).ToContainTextAsync($"{key}: {expectedValue}");
- }
- }
|