@podman-desktop/tests-playwright 1.25.0-next.202601120951-f252fef → 1.25.0-next.202601121139-d17ddc4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -356,7 +356,7 @@ class Y extends Bt {
356
356
  return await this.card.getByLabel(t, { exact: !0 }).textContent() ?? "";
357
357
  }
358
358
  }
359
- class L extends I {
359
+ class E extends I {
360
360
  heading;
361
361
  featuredProviderResources;
362
362
  constructor(t) {
@@ -734,7 +734,7 @@ async function ia(i, t) {
734
734
  return s.step("Delete Podman machine", async () => {
735
735
  const e = "podman", n = new d(i), o = await n.openDashboard();
736
736
  await a(o.heading).toBeVisible();
737
- const l = await (await n.openSettings()).openTabPage(L);
737
+ const l = await (await n.openSettings()).openTabPage(E);
738
738
  await a(l.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => await l.resourceCardIsVisible(e), { timeout: 15e3 }).toBeTruthy();
739
739
  const c = new Y(i, e, t);
740
740
  if (await a(c.providerConnections).toBeVisible({ timeout: 1e4 }), !await y(async () => await c.resourceElement.isVisible(), {
@@ -986,7 +986,7 @@ class oe extends w {
986
986
  return s.step("Rename image", async () => {
987
987
  if (!t)
988
988
  throw Error("Provide name is invalid!");
989
- return await a(this.saveButton).toBeVisible(), await this.imageName.clear(), await this.imageName.fill(t), e && (await this.imageTag.clear(), await this.imageTag.fill(e)), await a.poll(async () => this.alertDialog.count()).toBe(0), await a(this.saveButton).toBeEnabled(), await this.saveButton.click(), new E(this.page);
989
+ return await a(this.saveButton).toBeVisible(), await this.imageName.clear(), await this.imageName.fill(t), e && (await this.imageTag.clear(), await this.imageTag.fill(e)), await a.poll(async () => this.alertDialog.count()).toBe(0), await a(this.saveButton).toBeEnabled(), await this.saveButton.click(), new L(this.page);
990
990
  });
991
991
  }
992
992
  }
@@ -1059,6 +1059,7 @@ class k extends S {
1059
1059
  terminalContent;
1060
1060
  findInLogsInput;
1061
1061
  searchResults;
1062
+ clearLogsButton;
1062
1063
  static SUMMARY_TAB = "Summary";
1063
1064
  static LOGS_TAB = "Logs";
1064
1065
  static KUBE_TAB = "Kube";
@@ -1071,7 +1072,7 @@ class k extends S {
1071
1072
  }), this.startButton = this.controlActions.getByRole("button", {
1072
1073
  name: "Start Container",
1073
1074
  exact: !0
1074
- }), this.terminalInput = this.tabContent.getByLabel("Terminal input"), this.terminalContent = this.tabContent.locator(".xterm-rows"), this.findInLogsInput = this.tabContent.getByLabel("Find"), this.searchResults = this.tabContent.locator("div.xterm-selection > div");
1075
+ }), this.terminalInput = this.tabContent.getByLabel("Terminal input"), this.terminalContent = this.tabContent.locator(".xterm-rows"), this.findInLogsInput = this.tabContent.getByLabel("Find"), this.searchResults = this.tabContent.locator("div.xterm-selection > div"), this.clearLogsButton = this.tabContent.getByTitle("Clear logs");
1075
1076
  }
1076
1077
  async getState() {
1077
1078
  return s.step("Get container state", async () => {
@@ -1115,6 +1116,11 @@ class k extends S {
1115
1116
  async getCountOfSearchResults() {
1116
1117
  return s.step("Get count of search results", async () => (await this.activateTab(k.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.searchResults.count()));
1117
1118
  }
1119
+ async clearLogs() {
1120
+ return s.step("Clear logs", async () => {
1121
+ await a(this.clearLogsButton).toBeVisible(), await this.clearLogsButton.click();
1122
+ });
1123
+ }
1118
1124
  }
1119
1125
  class xt extends w {
1120
1126
  name;
@@ -1239,7 +1245,7 @@ class re extends S {
1239
1245
  return s.step("Open edit image page", async () => (await a(this.editButton).toBeEnabled({ timeout: 3e4 }), await this.editButton.click(), new oe(this.page, this.resourceName)));
1240
1246
  }
1241
1247
  async deleteImage() {
1242
- return s.step("Delete image", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 3e4 }), await this.deleteButton.click(), await g(this.page), new E(this.page)));
1248
+ return s.step("Delete image", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 3e4 }), await this.deleteButton.click(), await g(this.page), new L(this.page)));
1243
1249
  }
1244
1250
  async pushImage() {
1245
1251
  return s.step("Push image", async () => {
@@ -1249,7 +1255,7 @@ class re extends S {
1249
1255
  async saveImage(t) {
1250
1256
  if (!t)
1251
1257
  throw Error("Path is incorrect or not provided!");
1252
- return await a(this.saveImagebutton).toBeEnabled(), await this.saveImagebutton.click(), await a(this.saveImageInput).toBeVisible(), await a(this.confirmSaveImages).toBeVisible(), await this.saveImageInput.evaluate((e) => e.removeAttribute("readonly")), await this.confirmSaveImages.evaluate((e) => e.removeAttribute("disabled")), await this.saveImageInput.pressSequentially(t, { delay: 10 }), await this.confirmSaveImages.click(), new E(this.page);
1258
+ return await a(this.saveImagebutton).toBeEnabled(), await this.saveImagebutton.click(), await a(this.saveImageInput).toBeVisible(), await a(this.confirmSaveImages).toBeVisible(), await this.saveImageInput.evaluate((e) => e.removeAttribute("readonly")), await this.confirmSaveImages.evaluate((e) => e.removeAttribute("disabled")), await this.saveImageInput.pressSequentially(t, { delay: 10 }), await this.confirmSaveImages.click(), new L(this.page);
1253
1259
  }
1254
1260
  async pushImageToKindCluster() {
1255
1261
  const t = this.controlActions.getByRole("button", { name: "kebab menu", exact: !0 });
@@ -1283,7 +1289,7 @@ class le extends w {
1283
1289
  async pullImage(t, e = "", n = 6e4) {
1284
1290
  return s.step(`Pulling image ${t}:${e}`, async () => {
1285
1291
  const o = `${t}${e.length === 0 ? "" : ":" + e}`;
1286
- return await this.imageNameInput.fill(o), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: n }), await this.doneButton.click(), new E(this.page);
1292
+ return await this.imageNameInput.fill(o), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: n }), await this.doneButton.click(), new L(this.page);
1287
1293
  });
1288
1294
  }
1289
1295
  async getAllSearchResultsFor(t, e, n = "", o = !0) {
@@ -1329,7 +1335,7 @@ class le extends w {
1329
1335
  return s.step("Get first search result from the results table", async () => await this.getFirstResultButtonLocator().innerText());
1330
1336
  }
1331
1337
  async pullImageFromSearchResults(t, e = 6e4) {
1332
- return s.step(`Pull image from search results: ${t}`, async () => (await this.selectValueFromSearchResults(t), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: e }), await this.doneButton.click(), new E(this.page)));
1338
+ return s.step(`Pull image from search results: ${t}`, async () => (await this.selectValueFromSearchResults(t), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: e }), await this.doneButton.click(), new L(this.page)));
1333
1339
  }
1334
1340
  async selectValueFromSearchResults(t) {
1335
1341
  return s.step(`Select value from search results: ${t}`, async () => {
@@ -1361,7 +1367,7 @@ class le extends w {
1361
1367
  });
1362
1368
  }
1363
1369
  }
1364
- class E extends A {
1370
+ class L extends A {
1365
1371
  pullImageButton;
1366
1372
  pruneImagesButton;
1367
1373
  buildImageButton;
@@ -1525,7 +1531,7 @@ class ft extends w {
1525
1531
  }), this.arm64Button = this.platformRegion.getByLabel("linux/arm64"), this.amd64Button = this.platformRegion.getByLabel("linux/amd64"), this.arm64checkbox = this.platformRegion.getByLabel("ARM® aarch64 systems"), this.amd64checkbox = this.platformRegion.getByLabel("Intel and AMD x86_64 systems"), this.archMoreOptionsButton = this.platformRegion.getByRole("button", { name: "Show more options" }), this.archLessOptionsButton = this.platformRegion.getByRole("button", { name: "Show less options" }), this.terminalContent = t.locator(".xterm-rows");
1526
1532
  }
1527
1533
  async buildImage(t, e, n, o = [N.Default], r = 12e4) {
1528
- return s.step(`Building image ${t} from ${e} in ${n} with ${o} architecture`, async () => (await this.fillBuildImageForm(t, e, n, o), await a(this.doneButton).toBeEnabled({ timeout: r }), await this.validateBuildLogs(), await this.doneButton.scrollIntoViewIfNeeded(), await this.doneButton.click(), console.log(`Image ${t} has been built successfully!`), new E(this.page)));
1534
+ return s.step(`Building image ${t} from ${e} in ${n} with ${o} architecture`, async () => (await this.fillBuildImageForm(t, e, n, o), await a(this.doneButton).toBeEnabled({ timeout: r }), await this.validateBuildLogs(), await this.doneButton.scrollIntoViewIfNeeded(), await this.doneButton.click(), console.log(`Image ${t} has been built successfully!`), new L(this.page)));
1529
1535
  }
1530
1536
  async cancelBuild(t, e, n, o = [N.Default], r = 200) {
1531
1537
  return s.step(`Starting and canceling build for image ${t}`, async () => {
@@ -2337,7 +2343,7 @@ class d {
2337
2343
  return s.step("Open Dashboard page", async () => (await a(this.dashboardLink).toBeVisible({ timeout: 1e4 }), await this.dashboardLink.click({ force: !0 }), new kt(this.page)));
2338
2344
  }
2339
2345
  async openImages() {
2340
- return s.step("Open Images page", async () => (await a(this.imagesLink).toBeVisible({ timeout: 1e4 }), await this.imagesLink.click({ force: !0 }), new E(this.page)));
2346
+ return s.step("Open Images page", async () => (await a(this.imagesLink).toBeVisible({ timeout: 1e4 }), await this.imagesLink.click({ force: !0 }), new L(this.page)));
2341
2347
  }
2342
2348
  async openContainers() {
2343
2349
  return s.step("Open Containers page", async () => (await a(this.containersLink).toBeVisible({ timeout: 1e4 }), await this.containersLink.click({ force: !0 }), new V(this.page)));
@@ -2894,7 +2900,7 @@ async function ka(i, t, e = 3e5, { configFilePath: n, providerType: o, httpPort:
2894
2900
  return s.step(`Create Kind cluster with settings: configFilePath=${n},
2895
2901
  providerType=${o}, httpPort=${r},
2896
2902
  httpsPort=${l}, ingressController=${c}`, async () => {
2897
- const h = new d(i), b = new Tt(i), R = new Y(i, "kind", t), _ = new fe(i), rt = await (await h.openSettings()).openTabPage(L);
2903
+ const h = new d(i), b = new Tt(i), R = new Y(i, "kind", t), _ = new fe(i), rt = await (await h.openSettings()).openTabPage(E);
2898
2904
  if (await a(rt.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => rt.resourceCardIsVisible("kind")).toBeTruthy(), await a(R.createButton).toBeVisible(), await R.doesResourceElementExist())
2899
2905
  if (await R.resourceElementConnectionStatus.textContent() !== v.Running)
2900
2906
  console.log(`Kind cluster [${t}] already present, but not running. Delete the cluster...`), await Re(i);
@@ -2922,7 +2928,7 @@ async function Re(i, t = "kind", e = "kind-cluster-control-plane", n = "kind-clu
2922
2928
  return s.step(`Delete ${t} cluster`, async () => {
2923
2929
  const r = await nt(i, e), l = new d(i), c = new Y(i, t, n);
2924
2930
  await l.openSettings();
2925
- const u = new L(i);
2931
+ const u = new E(i);
2926
2932
  if (await a(u.heading).toBeVisible({ timeout: 1e4 }), !await c.doesResourceElementExist()) {
2927
2933
  console.log(`Kind cluster [${n}] not present, skipping deletion.`);
2928
2934
  return;
@@ -2967,7 +2973,7 @@ async function va(i, t, e, n, o, r = 3e4) {
2967
2973
  try {
2968
2974
  await a(c.heading).toBeVisible();
2969
2975
  } catch {
2970
- const h = await (await l.openSettings()).openTabPage(L);
2976
+ const h = await (await l.openSettings()).openTabPage(E);
2971
2977
  await a(h.heading).toBeVisible({ timeout: 1e4 }), await a(t.resourceElementDetailsButton).toBeEnabled(), await t.resourceElementDetailsButton.click();
2972
2978
  }
2973
2979
  if (await c.performConnectionActionDetails(n), n === f.Restart) {
@@ -2984,7 +2990,7 @@ async function va(i, t, e, n, o, r = 3e4) {
2984
2990
  }
2985
2991
  async function Pa(i, t = "kind", e = "kind-cluster-control-plane", n = "kind-cluster", o = 3e4) {
2986
2992
  return s.step(`Deletes the '${n}' cluster from the details page`, async () => {
2987
- const r = new d(i), l = await nt(i, e), u = await (await r.openSettings()).openTabPage(L), h = new Y(i, t, n);
2993
+ const r = new d(i), l = await nt(i, e), u = await (await r.openSettings()).openTabPage(E), h = new Y(i, t, n);
2988
2994
  if (await a(u.heading).toBeVisible({ timeout: 1e4 }), !await h.doesResourceElementExist()) {
2989
2995
  console.log(`Cluster [${n}] not present, skipping deletion.`);
2990
2996
  return;
@@ -3097,7 +3103,7 @@ async function Ia(i, t, e, n) {
3097
3103
  await a.poll(async () => u.getRowByName(n), { timeout: 15e3 }).toBeTruthy();
3098
3104
  });
3099
3105
  }
3100
- async function Ea(i, t, e, n) {
3106
+ async function La(i, t, e, n) {
3101
3107
  return s.step(`Create ${t} kubernetes resource: ${e}`, async () => {
3102
3108
  const o = new d(i);
3103
3109
  try {
@@ -3116,7 +3122,7 @@ async function Ea(i, t, e, n) {
3116
3122
  await a(l.heading).toBeVisible(), await a.poll(async () => l.getRowByName(e)).toBeTruthy();
3117
3123
  });
3118
3124
  }
3119
- async function La(i, t, e, n = 3e4) {
3125
+ async function Ea(i, t, e, n = 3e4) {
3120
3126
  return s.step(`Delete ${t} kubernetes resource: ${e}`, async () => {
3121
3127
  const l = await (await new d(i).openKubernetes()).openTabPage(t);
3122
3128
  await l.deleteKubernetesResource(e), await g(i), await a.poll(async () => await l.getRowByName(e), { timeout: n }).not.toBeTruthy();
@@ -3245,22 +3251,22 @@ const Ie = {
3245
3251
  extensionFullName: "minikube extension",
3246
3252
  extensionLabel: "minikube",
3247
3253
  extensionFullLabel: "podman-desktop.minikube"
3248
- }, Et = {
3254
+ }, Lt = {
3249
3255
  extensionName: "Podman AI Lab",
3250
3256
  extensionFullName: "Podman AI Lab extension",
3251
3257
  extensionLabel: "ai-lab",
3252
3258
  extensionFullLabel: "redhat.ai-lab"
3253
- }, Ee = {
3259
+ }, Le = {
3254
3260
  extensionName: "Red Hat Extension Pack",
3255
3261
  extensionFullName: "Red Hat Extension Pack extension",
3256
3262
  extensionLabel: "redhat-pack",
3257
3263
  extensionFullLabel: "redhat.redhat-pack"
3258
- }, Lt = {
3264
+ }, Et = {
3259
3265
  extensionName: "Bootable Container",
3260
3266
  extensionFullName: "Bootable Container extension",
3261
3267
  extensionLabel: "bootc",
3262
3268
  extensionFullLabel: "redhat.bootc"
3263
- }, Le = {
3269
+ }, Ee = {
3264
3270
  extensionName: "Developer Sandbox",
3265
3271
  extensionFullName: "Developer Sandbox extension",
3266
3272
  extensionLabel: "redhat-sandbox",
@@ -3346,21 +3352,21 @@ const Ie = {
3346
3352
  Me,
3347
3353
  Fe,
3348
3354
  Oe,
3349
- Et,
3355
+ Lt,
3350
3356
  _e
3351
3357
  ], He = [
3352
3358
  Ie,
3353
- Et,
3354
- Ee,
3355
3359
  Lt,
3356
3360
  Le,
3361
+ Et,
3362
+ Ee,
3357
3363
  St,
3358
3364
  At,
3359
3365
  Se,
3360
3366
  Ae,
3361
3367
  Ve
3362
3368
  ], Ha = [
3363
- Lt,
3369
+ Et,
3364
3370
  At,
3365
3371
  Ue,
3366
3372
  St
@@ -3656,7 +3662,7 @@ class Qa extends w {
3656
3662
  } catch (h) {
3657
3663
  console.log("No handling dialog displayed", h);
3658
3664
  }
3659
- return await a(u).toBeEnabled(), await u.click(), new L(this.page);
3665
+ return await a(u).toBeEnabled(), await u.click(), new E(this.page);
3660
3666
  });
3661
3667
  }
3662
3668
  async handleConnectionDialog(t, e) {
@@ -3814,7 +3820,7 @@ class Za extends I {
3814
3820
  return (await this.getContextRowByName(t)).getByLabel("Set as Current Context");
3815
3821
  }
3816
3822
  }
3817
- class tn extends L {
3823
+ class tn extends E {
3818
3824
  podmanMachineName;
3819
3825
  podmanMachineStatus;
3820
3826
  podmanMachineConnectionActions;
@@ -3933,7 +3939,7 @@ export {
3933
3939
  re as ImageDetailsPage,
3934
3940
  oe as ImageEditPage,
3935
3941
  Gt as ImageState,
3936
- E as ImagesPage,
3942
+ L as ImagesPage,
3937
3943
  Za as KubeContextPage,
3938
3944
  we as KubernetesBar,
3939
3945
  de as KubernetesDashboardPage,
@@ -3968,7 +3974,7 @@ export {
3968
3974
  Pt as ResourceDetailsPage,
3969
3975
  f as ResourceElementActions,
3970
3976
  v as ResourceElementState,
3971
- L as ResourcesPage,
3977
+ E as ResourcesPage,
3972
3978
  xt as RunImagePage,
3973
3979
  P as Runner,
3974
3980
  Z as RunnerOptions,
@@ -3982,7 +3988,7 @@ export {
3982
3988
  tt as VolumeState,
3983
3989
  Ce as WelcomePage,
3984
3990
  Ht as archType,
3985
- Lt as bootcExtension,
3991
+ Et as bootcExtension,
3986
3992
  pa as canTestRegistry,
3987
3993
  Ra as checkClusterResources,
3988
3994
  Sa as checkDeploymentReplicasInfo,
@@ -3992,21 +3998,21 @@ export {
3992
3998
  Da as configurePortForwarding,
3993
3999
  gt as countKubernetesPodReplicas,
3994
4000
  ka as createKindCluster,
3995
- Ea as createKubernetesResource,
4001
+ La as createKubernetesResource,
3996
4002
  ut as createPodmanMachineFromCLI,
3997
4003
  pe as delay,
3998
4004
  Re as deleteCluster,
3999
4005
  Pa as deleteClusterFromDetails,
4000
4006
  Ze as deleteContainer,
4001
4007
  ta as deleteImage,
4002
- La as deleteKubernetesResource,
4008
+ Ea as deleteKubernetesResource,
4003
4009
  na as deleteNetwork,
4004
4010
  aa as deletePod,
4005
4011
  ia as deletePodmanMachine,
4006
4012
  sa as deletePodmanMachineFromCLI,
4007
4013
  ea as deleteRegistry,
4008
4014
  Ia as deployContainerToCluster,
4009
- Le as developerSandboxExtension,
4015
+ Ee as developerSandboxExtension,
4010
4016
  $e as dockerExtension,
4011
4017
  Va as editDeploymentYamlFile,
4012
4018
  oa as ensureCliInstalled,
@@ -4016,7 +4022,7 @@ export {
4016
4022
  Ua as extensionsBuiltInList,
4017
4023
  He as extensionsExternalList,
4018
4024
  Ha as extensionsInstallationSmokeList,
4019
- Ee as extensionsPackExtension,
4025
+ Le as extensionsPackExtension,
4020
4026
  U as fillTextbox,
4021
4027
  Ba as findPageWithTitleInBrowser,
4022
4028
  Te as getDefaultVirtualizationProvider,
@@ -4047,7 +4053,7 @@ export {
4047
4053
  Ue as openshiftDockerExtension,
4048
4054
  Ve as openshiftLocalExtension,
4049
4055
  ya as performBrowserLogin,
4050
- Et as podmanAILabExtension,
4056
+ Lt as podmanAILabExtension,
4051
4057
  _a as podmanExtension,
4052
4058
  At as podmanQuadletExtension,
4053
4059
  ha as readFileInVolumeFromCLI,