Skip to content

Commit c7b6815

Browse files
committed
Merge pull request DefinitelyTyped#5981 from julioct/master
Add support for Spec Picker, add By.text(), refactor ActionBars
2 parents 74d1c4d + 7501358 commit c7b6815

File tree

2 files changed

+48
-10
lines changed

2 files changed

+48
-10
lines changed

msportalfx-test/msportalfx-test-tests.ts

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,21 +34,24 @@ function TestPortal() {
3434
var bladePromise = testFx.portal.openResourceBlade(resourceId, summaryBlade.title, 20000)
3535
var stringPromise = testFx.portal.takeScreenshot("TestPortal");
3636
var stringArrayPromise = testFx.portal.getBrowserLogs(testFx.LogLevel.All);
37+
anyPromise = testFx.portal.waitUntilElementDoesNotContainAttribute(testFx.Locators.By.className('part'), 'class', 'invalid');
3738
}
3839

3940
function TestBlades() {
4041
var blade = new testFx.Blades.Blade(resourceName);
4142
blade.clickCommand('Delete');
4243

4344
var createBlade = new testFx.Blades.CreateBlade(bladeTitle);
44-
voidPromise = createBlade.actionBar.clickCreate();
45-
voidPromise = createBlade.actionBar.clickDelete();
45+
voidPromise = createBlade.actionBar.createButton.click();
4646

4747
var browseBlade = new testFx.Blades.BrowseResourceBlade(bladeTitle);
4848
voidPromise = browseBlade.selectResource(resourceName);
4949

5050
var pickerBlade = new testFx.Blades.PickerBlade(bladeTitle);
5151
pickerBlade.pickItem('abc');
52+
53+
var specPickerBlade = new testFx.Blades.SpecPickerBlade(bladeTitle);
54+
specPickerBlade.pickSpec('S2');
5255
}
5356

5457
function TestParts() {
@@ -60,6 +63,9 @@ function TestParts() {
6063

6164
var resourceSummary = new testFx.Parts.ResourceSummaryPart(summaryBlade.getLocator());
6265
var count = resourceSummary.properties.length;
66+
67+
var pricingTier = new testFx.Parts.PricingTierPart(summaryBlade.getLocator());
68+
voidPromise = pricingTier.click();
6369
}
6470

6571
function TestControls() {
@@ -75,7 +81,13 @@ function TestControls() {
7581
}
7682

7783
function TestActionBars() {
78-
var bar = new testFx.ActionBars.ActionBar(summaryBlade.getLocator());
79-
voidPromise = bar.clickCreate();
80-
voidPromise = bar.clickDelete();
84+
var createBar = new testFx.ActionBars.CreateActionBar(summaryBlade.getLocator());
85+
voidPromise = createBar.createButton.click();
86+
87+
var deleteBar = new testFx.ActionBars.DeleteActionBar(summaryBlade.getLocator());
88+
voidPromise = deleteBar.deleteButton.click();
89+
voidPromise = deleteBar.cancelButton.click();
90+
91+
var pickerBar = new testFx.ActionBars.PickerActionBar(summaryBlade.getLocator());
92+
voidPromise = pickerBar.selectButton.click();
8193
}

msportalfx-test/msportalfx-test.d.ts

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,35 @@ declare module MsPortalTestFx {
3838
static partialLinkText(value: string): Locator;
3939
static tagName(value: string): Locator;
4040
static xpath(value: string): Locator;
41+
static text(value: string): Locator;
4142
static chained(...values: Locator[]): Locator;
4243
static content(...values: Locator[]): Locator;
4344
}
4445
}
4546

4647
export module ActionBars {
47-
export class ActionBar extends MsPortalTestFx.PortalElement {
48+
export class ActionBarButton extends PortalElement {
49+
constructor(parentLocator?: Locators.Locator, baseLocator?: Locators.Locator);
50+
click(): Q.Promise<void>;
51+
}
52+
53+
export class CreateActionBar extends PortalElement {
54+
public createButton: ActionBarButton;
55+
56+
constructor(parentLocator?: Locators.Locator);
57+
}
58+
59+
export class DeleteActionBar extends PortalElement {
60+
public deleteButton: ActionBarButton;
61+
public cancelButton: ActionBarButton;
62+
63+
constructor(parentLocator?: Locators.Locator);
64+
}
65+
66+
export class PickerActionBar extends PortalElement {
67+
public selectButton: ActionBarButton;
68+
4869
constructor(parentLocator?: Locators.Locator);
49-
clickCreate(): Q.Promise<void>;
50-
clickDelete(): Q.Promise<void>;
5170
}
5271
}
5372

@@ -60,7 +79,7 @@ declare module MsPortalTestFx {
6079
}
6180

6281
export class CreateBlade extends Blade {
63-
public actionBar: ActionBars.ActionBar;
82+
public actionBar: ActionBars.CreateActionBar;
6483
}
6584

6685
export class BrowseResourceBlade extends Blade {
@@ -70,9 +89,12 @@ declare module MsPortalTestFx {
7089
}
7190

7291
export class PickerBlade extends Blade {
73-
constructor(title: string);
7492
pickItem(item: string): Q.Promise<void>;
7593
}
94+
95+
export class SpecPickerBlade extends Blade {
96+
pickSpec(specCode: string): Q.Promise<void>;
97+
}
7698
}
7799

78100
export module Controls {
@@ -137,6 +159,9 @@ declare module MsPortalTestFx {
137159
constructor(parentLocator?: Locators.Locator);
138160
}
139161

162+
class PricingTierPart extends Part {
163+
}
164+
140165
export class Tile extends MsPortalTestFx.PortalElement {
141166
public progressLocator: Locators.Locator;
142167

@@ -201,6 +226,7 @@ declare module MsPortalTestFx {
201226
getAttribute(locator: Locators.Locator, attributeName: string, timeout?: number): Q.Promise<string>;
202227
waitForElementNotVisible(locator: Locators.Locator, timeout?: number): Q.Promise<boolean>;
203228
waitUntilElementContainsAttribute(locator: Locators.Locator, attributeName: string, attributeValue: string, timeout?: number): Q.Promise<any>;
229+
waitUntilElementDoesNotContainAttribute(locator: Locators.Locator, attributeName: string, attributeValue: string, timeout?: number): Q.Promise<any>;
204230
waitForElementLocated(locator: Locators.Locator, timeout?: number): Q.Promise<any>;
205231
takeScreenshot(filePrefix?: string): Q.Promise<string>;
206232
goHome(timeout?: number): Q.Promise<void>;

0 commit comments

Comments
 (0)