Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions testing/PIMS.Tests.Automation/Classes/AcquisitionFile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ public class AcquisitionFile
public string OwnerSolicitor { get; set; } = null!;
public string OwnerRepresentative { get; set; } = null!;
public string OwnerComment { get; set; } = null!;
public string AcquisitionNOCReceivedDate { get; set; } = null!;
public string AcquisitionNOCComments { get; set; } = null!;
public int AcquisitionSearchPropertiesIndex { get; set; } = 0;
public SearchProperty AcquisitionSearchProperties { get; set; } = new SearchProperty() { };
public int TakesStartRow { get; set; } = 0;
Expand Down
4 changes: 4 additions & 0 deletions testing/PIMS.Tests.Automation/Classes/ManagementFile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,14 @@ public class ManagementFile
public string ManagementName { get; set; } = null!;
public string ManagementHistoricalFile { get; set; } = null!;
public string ManagementPurpose { get; set; } = null!;
public string ManagementResponsiblePayer { get; set; } = null!;
public string ManagementAdditionalDetails { get; set; } = null!;
public string ManagementMinistryRegion { get; set; } = null!;
public int ManagementTeamStartRow { get; set; } = 0;
public int ManagementTeamCount { get; set; } = 0;
public List<TeamMember> ManagementTeam { get; set; } = new List<TeamMember>() { };
public string ManagementNOCReceivedDate { get; set; } = null!;
public string ManagementNOCComments { get; set; } = null!;
public int ManagementSearchPropertiesIndex { get; set; } = 0;
public SearchProperty ManagementSearchProperties { get; set; } = new SearchProperty() { };
public int ManagementTotalProperties { get; set; } = 0;
Expand Down
3 changes: 1 addition & 2 deletions testing/PIMS.Tests.Automation/Classes/Property.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ public class Property
public string MunicipalZoning { get; set; } = null!;
public List<string> Anomalies { get; set; } = new List<string>();
public List<string> TenureStatus { get; set; } = new List<string>();
//public string ProvincialPublicHwy { get; set; } = null!;
//public List<string> HighwayEstablishedBy { get; set; } = new List<string>();
public List<string> TenureCleanup { get; set; } = new List<string>();
public string SqrMeters { get; set; } = null!;
public Boolean IsVolumetric { get; set; } = false;
public string Volume { get; set; } = null!;
Expand Down
Binary file modified testing/PIMS.Tests.Automation/Data/PIMS_Testing_Data.xlsx
Binary file not shown.
4 changes: 2 additions & 2 deletions testing/PIMS.Tests.Automation/Features/Leases.feature
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ Scenario: 02._Leases_Properties_and_Surplus_Declaration
Given I create a new minimum Lease from row number 3
When I add Properties to the Lease Details
And I update a Lease's Properties from row number 4
And I verify the Surplus section
Then A new lease is created successfully
#And I verify the Surplus section
#Then A new lease is created successfully

Scenario: 03._Leases_Approval_Consultations
Given I create a new minimum Lease from row number 20
Expand Down
6 changes: 0 additions & 6 deletions testing/PIMS.Tests.Automation/Features/Leases.feature.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

96 changes: 71 additions & 25 deletions testing/PIMS.Tests.Automation/PageObjects/AcquisitionDetails.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,14 @@ public class AcquisitionDetails : PageObjectBase
private readonly By acquisitionFileDetailsTab = By.CssSelector("a[data-rb-event-key='fileDetails']");
private readonly By acquisitionSubfilesTab = By.XPath("//a[contains(text(),'Sub-Files')]");

//Generate Forms Elements
private readonly By acquisitionFileGenerateFormTitle = By.XPath("//span[text()='Generate a form:']");
private readonly By acquisitionFileGenerateForm12Link = By.XPath("//div[text()='Generate Form 12']/parent::button");
private readonly By acquisitionFileGenerateLetterLink = By.XPath("/div[text()='Generate Letter']/parent::button");
private readonly By acquisitionFileGenerateH0443Link = By.XPath("/div[text()='Conditions of Entry (H0443)']/parent::button");
private readonly By acquisitionFileGenerateNoticeEntryLink = By.XPath("/div[text()='Generate Notice of Entry']/parent::button");
private readonly By acquisitionFileGenerateIntakeLink = By.XPath("/div[text()='Generate Intake']/parent::button]");

//Acquisition File Details View Form Elements
private readonly By acquisitionFileTitle = By.CssSelector("div[data-testid='form-title']");
private readonly By acquisitionFileHeaderCodeLabel = By.XPath("//label[contains(text(), 'File:')]");
Expand Down Expand Up @@ -100,7 +108,6 @@ public class AcquisitionDetails : PageObjectBase
private readonly By acquisitionFileProjectDelete = By.CssSelector("div[data-testid='typeahead-project'] button[aria-label='Clear']");
private readonly By acquisitionFileProject1stOption = By.CssSelector("div[id='typeahead-project'] a");
private readonly By acquisitionFileProjectProductSelect = By.Id("input-product");
private readonly By acquicistionFileProjectProductOptions = By.CssSelector("select[id='input-product'] option");
private readonly By acquisitionFileProjectOtherFundingInput = By.Id("input-fundingTypeOtherDescription");

private readonly By acquisitionFileStatusesFileProgressCreateLabel = By.XPath("//label[contains(text(),'File progress')]");
Expand Down Expand Up @@ -131,7 +138,6 @@ public class AcquisitionDetails : PageObjectBase
private readonly By acquisitionFileDetailsRegionSelect = By.Id("input-region");

private readonly By acquisitionFileTeamMembersGroup = By.XPath("//div[contains(text(),'Acquisition Team')]/parent::div/parent::h2/following-sibling::div/div[@class='py-3 row']");
private readonly By acquisitionFileViewTeamMembersGroup = By.XPath("//div[contains(text(),'Acquisition Team')]/parent::div/parent::h2/following-sibling::div/div");

private readonly By acquisitionFileCreateOwnerSubtitle = By.XPath("//div[contains(text(),'Owners')]");
private readonly By acquisitionFileOwnerInfo = By.XPath("//p[contains(text(),'Each property in this file should be owned by the owner(s) in this section')]");
Expand All @@ -141,40 +147,33 @@ public class AcquisitionDetails : PageObjectBase
private readonly By acquisitionFileOwnerSolicitorLabel = By.XPath("//label[contains(text(),'Owner solicitor')]");
private readonly By acquisitionFileOwnerSolicitorButton = By.XPath("//label[contains(text(),'Owner solicitor')]/parent::div/following-sibling::div/div/div/div/button[@title='Select Contact']");
private readonly By acquisitionFileOwnerSolicitorContent = By.XPath("//label[contains(text(),'Owner solicitor')]/parent::div/following-sibling::div/a/span");

private readonly By acquisitionFileOwnerRepresentativeButton = By.XPath("//label[contains(text(),'Owner representative')]/parent::div/following-sibling::div/div/div/div/button[@title='Select Contact']");
private readonly By acquisitionFileOwnerRepresentativeContent = By.XPath("//label[contains(text(),'Owner representative')]/parent::div/following-sibling::div/a/span");

private readonly By acquisitionFileOwnerCommentTextArea = By.Id("input-ownerRepresentative.comment");
private readonly By acquisitionFileOwnerCommentContent = By.XPath("//label[contains(text(),'Comment')]/parent::div/following-sibling::div");

private readonly By acquisitionFileOwnerCommentEditTextArea = By.Id("input-ownerRepresentatives.0.comment");

private readonly By acquisitionFileMainFormDiv = By.XPath("//h1[contains(text(),'Create Acquisition File')]/parent::div/parent::div/parent::div/parent::div");

private readonly By acquisitionFileNoticeClaimSubtitle = By.XPath("//h2/div/div[contains(text(),'Notice of Claims')]");
private readonly By acquisitionFileNoticeClaimReceivedDateLabel = By.XPath("//label[contains(text(),'Received date')]");
private readonly By acquisitionFileNoticeClaimReceivedDateInput = By.Id("datepicker-noticeOfClaim.receivedDate");
private readonly By acquisitionFileNoticeClaimReceivedDateContent = By.XPath("//label[contains(text(),'Received date')]/parent::div/following-sibling::div");
private readonly By acquisitionFileNoticeClaimCommentsLabel = By.XPath("//label[contains(text(),'Comments')]");
private readonly By acquisitionFileNoticeClaimCommentsInput = By.Id("input-noticeOfClaim.comment");
private readonly By acquisitionFileNoticeClaimCommentsContent = By.XPath("//label[contains(text(),'Comments')]/parent::div/following-sibling::div");

//Acquisition Sub-files View Elements
private readonly By acquisitionSubfileCreateTableTitle = By.XPath("//div[contains(text(),'Linked Files')]");
private readonly By acquisitionSubfileCreateTableLinkedFilesCode = By.CssSelector("div[data-testid='linked-files-header']");
private readonly By acquisitionSubfileCreateButton = By.XPath("//div[contains(text(),'Add Sub-interest File')]/parent::button");
private readonly By acquisitionSubfileInitLabel = By.XPath("//label[contains(text(),'Linked files')]");
private readonly By acquisitionSubfileTable = By.CssSelector("div[data-testid='AcquisitionSubFilesTable']");
private readonly By acquisitionSubfileNumberColumn = By.XPath("//div[@data-testid='AcquisitionSubFilesTable']/div[@class='thead thead-light']/div/div//div[contains(text(),'#')]");
private readonly By acquisitionSubfileNameColumn = By.XPath("//div[@data-testid='AcquisitionSubFilesTable']/div[@class='thead thead-light']/div/div//div[contains(text(),'Name')]");
private readonly By acquisitionSubfileStatusColumn = By.XPath("//div[@data-testid='AcquisitionSubFilesTable']/div[@class='thead thead-light']/div/div//div[contains(text(),'Status')]");
private readonly By acquisitionSubfilesCount = By.CssSelector("div[data-testid='AcquisitionSubFilesTable'] div[class='tbody'] div[class='tr-wrapper']");
private readonly By acquisitionSubfileLastChildLink = By.CssSelector("div[data-testid='AcquisitionSubFilesTable'] div[class='tbody'] div[class='tr-wrapper']:last-child a");

private readonly By acquisitionSubfileCreateInsterestSubtitle = By.XPath("//div[contains(text(),'Sub-Interest')]");
private readonly By acquisitionSubfileInterestInfo = By.XPath("//p[contains(text(),'Each property in this sub-file should be impacted by the sub-interest(s) in this section')]");
private readonly By acquisitionSubfileOwnersGroup = By.XPath("//div[contains(text(),'Sub-Interest')]/parent::div/parent::h2/following-sibling::div/div[@class='py-3 row']");
private readonly By acquisitionSubfileOwnerSolicitorLabel = By.XPath("//label[contains(text(),'Sub-interest solicitor')]");
private readonly By acquisitionSubfileOwnerSolicitorButton = By.XPath("//label[contains(text(),'Sub-interest solicitor')]/parent::div/following-sibling::div/div/div/div/button[@title='Select Contact']");
private readonly By acquisitionSubfileOwnerSolicitorContent = By.XPath("//label[contains(text(),'Sub-interest solicitor')]/parent::div/following-sibling::div/a/span");
private readonly By acquisitionSubfileOwnerRepresentativeLabel = By.XPath("//label[contains(text(),'Sub-interest representative')]");
private readonly By acquisitionSubfileOwnerRepresentativeButton = By.XPath("//label[contains(text(),'Sub-interest representative')]/parent::div/following-sibling::div/div/div/div/button[@title='Select Contact']");
private readonly By acquisitionSubfileOwnerRepresentativeContent = By.XPath("//label[contains(text(),'Sub-interest representative')]/parent::div/following-sibling::div/a/span");


//Acquisition File Confirmation Modal Elements
private readonly By acquisitionFileConfirmationModal = By.CssSelector("div[class='modal-content']");

Expand Down Expand Up @@ -243,14 +242,14 @@ public void AddAcquisitionSubfileBttn()

public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitionType)
{
//Status
//STATUS
if (acquisition.AcquisitionStatus != "" && acquisitionType == "Main")
{
WaitUntilClickable(acquisitionFileStatusSelect);
ChooseSpecificSelectOption(acquisitionFileStatusSelect, acquisition.AcquisitionStatus);
}

//Project
//PROJECT
if (acquisition.AcquisitionProject != "" && acquisitionType == "Main")
{
WaitUntilVisible(acquisitionFileProjectInput);
Expand Down Expand Up @@ -288,7 +287,7 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio
webDriver.FindElement(acquisitionFileProjectOtherFundingInput).SendKeys(acquisition.AcquisitionFundingOther);
}

//Progress Statuses
//PROGRESS STATUTES
//Delete File Progress statuses previously selected if any
if (webDriver.FindElements(acquisitionFileStatusesDeleteBttns).Count > 0)
{
Expand Down Expand Up @@ -356,7 +355,7 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio
if (acquisition.AcquisitionExpropriationRiskStatus != "")
ChooseSpecificSelectOption(acquisitionFileStatusesExpropriationRiskSelect, acquisition.AcquisitionExpropriationRiskStatus);

//Schedule
//SCHEDULE
if (acquisition.AcquisitionAssignedDate != "")
{
WaitUntilClickable(acquisitionFileAssignedDateInput);
Expand Down Expand Up @@ -389,7 +388,7 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio
webDriver.FindElement(acquisitionFilePossesionDateInput).SendKeys(Keys.Enter);
}

//Details
//DETAILS
if (acquisition.AcquisitionFileName != "")
{
WaitUntilVisible(acquisitionFileNameInput);
Expand Down Expand Up @@ -434,7 +433,7 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio
ChooseSpecificSelectOption(acquisitionFileDetailsRegionSelect, acquisition.AcquisitionMOTIRegion);
}

//Team
//TEAM
if (acquisition.AcquisitionTeam!.Count > 0)
{
while (webDriver.FindElements(acquisitionFileTeamMembersGroup).Count > 0)
Expand All @@ -445,7 +444,7 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio

}

//Owners
//OWNERS
if (acquisition.AcquisitionOwners!.Count > 0)
{
while (webDriver.FindElements(acquisitionFileOwnersGroup).Count > 0)
Expand Down Expand Up @@ -498,6 +497,25 @@ public void UpdateAcquisitionFile(AcquisitionFile acquisition, string acquisitio
webDriver.FindElement(acquisitionFileOwnerCommentTextArea).SendKeys(acquisition.OwnerComment);
}
}

//NOTICE OF CLAIMS
AssertTrueIsDisplayed(acquisitionFileNoticeClaimSubtitle);

//Date Received
AssertTrueIsDisplayed(acquisitionFileNoticeClaimReceivedDateLabel);
if (acquisition.AcquisitionNOCReceivedDate != "")
{
ClearInput(acquisitionFileNoticeClaimReceivedDateInput);
webDriver.FindElement(acquisitionFileNoticeClaimReceivedDateInput).SendKeys(acquisition.AcquisitionNOCReceivedDate);
}

//Comments
AssertTrueIsDisplayed(acquisitionFileNoticeClaimCommentsLabel);
if (acquisition.AcquisitionNOCComments != "")
{
ClearInput(acquisitionFileNoticeClaimCommentsInput);
webDriver.FindElement(acquisitionFileNoticeClaimCommentsInput).SendKeys(acquisition.AcquisitionNOCComments);
}
}

public void SaveAcquisitionFileDetails()
Expand Down Expand Up @@ -587,7 +605,6 @@ public int IsCreateAcquisitionFileFormVisible()
public void VerifyAcquisitionFileView(AcquisitionFile acquisition, string acquisitionType)
{
Wait();
//AssertTrueIsDisplayed(acquisitionFileViewTitle);

//Header
AssertTrueIsDisplayed(acquisitionFileHeaderCodeLabel);
Expand All @@ -612,6 +629,15 @@ public void VerifyAcquisitionFileView(AcquisitionFile acquisition, string acquis
if (acquisition.AcquisitionStatus != "")
AssertTrueContentEquals(acquisitionHeaderStatusContent, GetUppercaseString(acquisition.AcquisitionStatus));

//Links
AssertTrueIsDisplayed(acquisitionFileGenerateFormTitle);
AssertTrueIsDisplayed(acquisitionFileGenerateForm12Link);
AssertTrueIsDisplayed(acquisitionFileGenerateLetterLink);
AssertTrueIsDisplayed(acquisitionFileGenerateH0443Link);
AssertTrueIsDisplayed(acquisitionFileGenerateNoticeEntryLink);
AssertTrueIsDisplayed(acquisitionFileGenerateIntakeLink);

//MAIN FORM
//Project
AssertTrueIsDisplayed(acquisitionFileProjectSubtitle);
AssertTrueIsDisplayed(acquisitionFileProjectLabel);
Expand Down Expand Up @@ -777,6 +803,19 @@ public void VerifyAcquisitionFileView(AcquisitionFile acquisition, string acquis

if (acquisition.OwnerComment != "")
AssertTrueContentEquals(acquisitionFileOwnerCommentContent, acquisition.OwnerComment);

//NOTICE OF CLAIMS
AssertTrueIsDisplayed(acquisitionFileNoticeClaimSubtitle);

//NOC Received Date
AssertTrueIsDisplayed(acquisitionFileNoticeClaimReceivedDateLabel);
if (acquisition.AcquisitionNOCReceivedDate != "")
AssertTrueContentEquals(acquisitionFileNoticeClaimReceivedDateContent, acquisition.AcquisitionNOCReceivedDate);

//NOC Comments
AssertTrueIsDisplayed(acquisitionFileNoticeClaimCommentsLabel);
if (acquisition.AcquisitionNOCReceivedDate != "")
AssertTrueContentEquals(acquisitionFileNoticeClaimCommentsContent, acquisition.AcquisitionNOCComments);
}

public void VerifyAcquisitionFileCreate(string acquisitionType)
Expand Down Expand Up @@ -859,6 +898,13 @@ public void VerifyAcquisitionFileCreate(string acquisitionType)
AssertTrueIsDisplayed(acquisitionSubfileOwnerRepresentativeButton);
}
AssertTrueIsDisplayed(acquisitionFileOwnerCommentTextArea);

//Notice of Claims
AssertTrueIsDisplayed(acquisitionFileNoticeClaimSubtitle);
AssertTrueIsDisplayed(acquisitionFileNoticeClaimReceivedDateLabel);
AssertTrueIsDisplayed(acquisitionFileNoticeClaimReceivedDateInput);
AssertTrueIsDisplayed(acquisitionFileNoticeClaimCommentsLabel);
AssertTrueIsDisplayed(acquisitionFileNoticeClaimCommentsInput);
}

public void VerifyMaximumFields()
Expand Down
Loading
Loading