public void TestFindDocumentWithClusteringKeyPart() { var documents = CqlDocumentsForTests.GetCqlDocumentBindingMetaEntries(serializer); var firstPartnerPartyId = documents[0].FirstPartnerPartyId; var secondPartnerPartyId = documents[0].SecondPartnerPartyId; using (var context = new CqlDbContext()) context.InsertDocuments(documents); using var browser = new BrowserForTests(); var showTableEntriesPage = browser.SwitchTo <BusinessObjectTablePage>("DocumentBindingsMeta"); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("BindingType").EnumSelect.SelectValueByText("ByPriceList"); showTableEntriesPage.FilterModal.GetFilter("FirstPartnerPartyId").Input.ClearAndInputText(firstPartnerPartyId); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.FilterModal.GetFilter("SecondPartnerPartyId").Input.WaitIncorrect(); showTableEntriesPage.FilterModal.GetFilter("DocumentNumber").Input.WaitIncorrect(); showTableEntriesPage.FilterModal.GetFilter("DocumentDate").DateTimeInTicks.WaitIncorrect(); showTableEntriesPage.FilterModal.GetFilter("DocumentTime").DateTimeInTicks.WaitIncorrect(); showTableEntriesPage.FilterModal.GetFilter("FirstPartnerPartyId").Input.WaitCorrect(); showTableEntriesPage.FilterModal.GetFilter("SecondPartnerPartyId").Input.ClearAndInputText(secondPartnerPartyId); showTableEntriesPage.FilterModal.GetFilter("DocumentNumber").Input.ClearAndInputText("0"); showTableEntriesPage.FilterModal.GetFilter("DocumentDate").Date.ClearAndInputText("10.10.2000"); showTableEntriesPage.FilterModal.GetFilter("DocumentTime").DateTimeInTicks.ClearAndInputText(new DateTime(2020, 10, 10, 13, 12, 11, DateTimeKind.Utc).Ticks.ToString()); var documentType = documents[0].DocumentType; var documentCirculationId = documents[0].DocumentCirculationId.ToString(); showTableEntriesPage.FilterModal.GetFilter("DocumentType").Input.ClearAndInputText(documentType); showTableEntriesPage.FilterModal.GetFilter("DocumentCirculationId").Input.ClearAndInputText(documentCirculationId); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(1); showTableEntriesPage.BusinessObjectItems[0].FindColumn("DocumentCirculationId").WaitText(documentCirculationId); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("DocumentType").Input.Clear(); showTableEntriesPage.FilterModal.GetFilter("DocumentCirculationId").Input.Clear(); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(10); showTableEntriesPage.BusinessObjectItems.Wait(row => row.FindColumn("DocumentCirculationId").Text).That(Is.EquivalentTo(documents.Select(x => x.DocumentCirculationId.ToString()))); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("DocumentType").Input.ClearAndInputText(documentType); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(5); showTableEntriesPage.BusinessObjectItems.Wait(row => row.FindColumn("DocumentType").Text).That(Is.All.EqualTo("Invoic")); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("DocumentType").OperatorSelect.SelectValueByText(">"); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(5); showTableEntriesPage.BusinessObjectItems.Wait(row => row.FindColumn("DocumentType").Text).That(Is.All.EqualTo("Orders")); }
public void TestObjectKeysValidation() { var printingInfo = CqlDocumentsForTests.GetCqlDocumentPrintingInfo(); var printingInfoId = printingInfo.Id.ToString(); using (var context = new CqlDbContext()) context.InsertDocument(printingInfo); using var browser = new BrowserForTests(); var showTableEntriesPage = browser.SwitchTo <BusinessObjectTablePage>("DocumentPrintingInfo"); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.Apply.Click(); var searchField = showTableEntriesPage.FilterModal.GetFilter("Id"); searchField.InputValidation.ExpectIsOpenedWithMessage("Поле должно быть заполнено"); searchField.Input.ClearAndInputText(Guid.NewGuid().ToString()); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitAbsence(); showTableEntriesPage.NothingFound.WaitPresence(); showTableEntriesPage.OpenFilter.Click(); searchField = showTableEntriesPage.FilterModal.GetFilter("Id"); searchField.Input.ClearAndInputText(printingInfoId); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(1); showTableEntriesPage.BusinessObjectItems[0].FindColumn("Id").WaitText(printingInfoId); }
public void TestFindDocumentWithDifferentColumnTypes() { var document = CqlDocumentsForTests.GetCqlConnectorDeliveryContext(serializer); var document2 = CqlDocumentsForTests.GetCqlConnectorDeliveryContext(serializer); using (var context = new CqlDbContext()) context.InsertDocuments(new[] { document, document2 }); using var browser = new BrowserForTests(); var showTableEntriesPage = browser.LoginAsSuperUser().SwitchTo <BusinessObjectTablePage>("CqlConnectorDeliveryContext"); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("TimeSliceId").DateTimeInTicks.ClearAndInputText(document.TimeSliceId.UtcTicks.ToString()); showTableEntriesPage.FilterModal.GetFilter("TimeSliceShardNumber").Input.ClearAndInputText(document.TimeSliceShardNumber.ToString()); showTableEntriesPage.FilterModal.GetFilter("ContextId").Input.ClearAndInputText(document.ContextId.ToString()); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(1); var row = showTableEntriesPage.BusinessObjectItems[0]; row.FindColumn("TimeSliceId").WaitText(document.TimeSliceId.ToString("yyyy-MM-ddTHH:mm:ss.ffK")); row.FindColumn("TimeSliceShardNumber").WaitText(document.TimeSliceShardNumber.ToString()); row.FindColumn("ContextId").WaitText(document.ContextId.ToString()); row.Delete.Click(); showTableEntriesPage.ConfirmDeleteObjectModal.Delete.Click(); browser.RefreshUntil(showTableEntriesPage, x => x.NothingFound.IsPresent.Get()); GetConnectorDeliveryContext(document).Length.Should().Be(0); GetConnectorDeliveryContext(document2).Single().Should().BeEquivalentTo(document2); }
public void TestNonSuperUserCantEditOrDeleteObject() { var document = CqlDocumentsForTests.GetCqlDocumentPrintingInfo(); using (var context = new CqlDbContext()) context.GetTable <DocumentPrintingInfo>().Insert(document).SetTimestamp(DateTimeOffset.UtcNow).Execute(); using var browser = new BrowserForTests(); var printingInfoPage = browser.SwitchTo <BusinessObjectTablePage>("DocumentPrintingInfo"); printingInfoPage.OpenFilter.Click(); printingInfoPage.FilterModal.GetFilter("Id").Input.ClearAndInputText(document.Id.ToString()); printingInfoPage.FilterModal.Apply.Click(); var detailsPage = printingInfoPage.BusinessObjectItems[0].Details.ClickAndGoTo <BusinessObjectDetailsPage>(); detailsPage.RootAccordion.FindField("PartyId").Edit.WaitAbsence(); detailsPage.Delete.WaitAbsence(); }
private static Guid CreateDocument(string documentName) { var documentModel = CqlDocumentsForTests.GetDocumentModel(); switch (documentName) { case "SqlDocument": CreateSqlDocument(documentModel); break; case "CqlDocument": CreateCqlDocument(documentModel); break; default: throw new InvalidOperationException(); } return(documentModel.Id); }
public void TestDeleteDocumentWithClusteringKeyPart() { var documents = CqlDocumentsForTests.GetCqlDocumentBindingMetaEntries(serializer); var firstPartnerPartyId = documents[0].FirstPartnerPartyId; var secondPartnerPartyId = documents[0].SecondPartnerPartyId; var documentType = documents[0].DocumentType; var documentCirculationId = documents[0].DocumentCirculationId.ToString(); using (var context = new CqlDbContext()) context.InsertDocuments(documents); using var browser = new BrowserForTests(); var showTableEntriesPage = browser.LoginAsSuperUser().SwitchTo <BusinessObjectTablePage>("DocumentBindingsMeta"); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("BindingType").EnumSelect.SelectValueByText("ByPriceList"); showTableEntriesPage.FilterModal.GetFilter("FirstPartnerPartyId").Input.ClearAndInputText(firstPartnerPartyId); showTableEntriesPage.FilterModal.GetFilter("SecondPartnerPartyId").Input.ClearAndInputText(secondPartnerPartyId); showTableEntriesPage.FilterModal.GetFilter("DocumentNumber").Input.ClearAndInputText("0"); showTableEntriesPage.FilterModal.GetFilter("DocumentDate").Date.ClearAndInputText("10.10.2000"); showTableEntriesPage.FilterModal.GetFilter("DocumentTime").DateTimeInTicks.ClearAndInputText(new DateTime(2020, 10, 10, 13, 12, 11, DateTimeKind.Utc).Ticks.ToString()); showTableEntriesPage.FilterModal.GetFilter("DocumentType").Input.ClearAndInputText(documentType); showTableEntriesPage.FilterModal.GetFilter("DocumentCirculationId").Input.ClearAndInputText(documentCirculationId); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(1); showTableEntriesPage.BusinessObjectItems[0].FindColumn("DocumentCirculationId").WaitText(documentCirculationId); showTableEntriesPage.BusinessObjectItems[0].Delete.Click(); showTableEntriesPage.ConfirmDeleteObjectModal.Delete.Click(); showTableEntriesPage = browser.RefreshUntil(showTableEntriesPage, x => x.NothingFound.IsPresent.Get()); showTableEntriesPage.OpenFilter.Click(); showTableEntriesPage.FilterModal.GetFilter("DocumentType").Input.Clear(); showTableEntriesPage.FilterModal.GetFilter("DocumentCirculationId").Input.Clear(); showTableEntriesPage.FilterModal.Apply.Click(); showTableEntriesPage.BusinessObjectItems.WaitCount(9); GetBindingMeta(documents[0]).Length.Should().Be(0); }
public void TestLinkFromFindShouldReferToDetailPage() { var document = CqlDocumentsForTests.GetCqlDocumentPrintingInfo(); using (var context = new CqlDbContext()) context.GetTable <DocumentPrintingInfo>().Insert(document).SetTimestamp(DateTimeOffset.UtcNow).Execute(); using var browser = new BrowserForTests(); var printingInfoPage = browser.LoginAsSuperUser().SwitchTo <BusinessObjectTablePage>("DocumentPrintingInfo"); printingInfoPage.BusinessObjectItems.Count.Wait().That(Is.GreaterThan(0)); printingInfoPage.OpenFilter.Click(); printingInfoPage.FilterModal.GetFilter("Id").Input.ClearAndInputText(document.Id.ToString()); printingInfoPage.FilterModal.Apply.Click(); printingInfoPage.BusinessObjectItems.WaitCount(1); printingInfoPage.BusinessObjectItems[0].FindColumn("Id").WaitText(document.Id.ToString()); var detailsPage = printingInfoPage.BusinessObjectItems[0].Details.ClickAndGoTo <BusinessObjectDetailsPage>(); detailsPage.Header.WaitPresence(); CheckDocumentPrintingInfoFields(detailsPage, document); }
public void TestSuperUserCanEditOrDeleteObject() { var document = CqlDocumentsForTests.GetCqlDocumentPrintingInfo(); using (var context = new CqlDbContext()) context.GetTable <DocumentPrintingInfo>().Insert(document).SetTimestamp(DateTimeOffset.UtcNow).Execute(); using var browser = new BrowserForTests(); var printingInfoPage = browser.LoginAsSuperUser().SwitchTo <BusinessObjectTablePage>("DocumentPrintingInfo"); printingInfoPage.OpenFilter.Click(); printingInfoPage.FilterModal.GetFilter("Id").Input.ClearAndInputText(document.Id.ToString()); printingInfoPage.FilterModal.Apply.Click(); var detailsPage = printingInfoPage.BusinessObjectItems[0].Details.ClickAndGoTo <BusinessObjectDetailsPage>(); var id = detailsPage.RootAccordion.FindField("Id"); id.Edit.WaitAbsence(); var partyId = detailsPage.RootAccordion.FindField("PartyId"); partyId.Edit.WaitAbsence(); var fileId = detailsPage.RootAccordion.FindField("FileId"); fileId.Edit.Click(); fileId.FieldValue.Input.ClearAndInputText("Abc"); fileId.Save.Click(); fileId.Value.WaitText("Abc"); var status = detailsPage.RootAccordion.FindField("Status"); status.Edit.Click(); status.FieldValue.EnumSelect.WaitText("Finished"); status.FieldValue.EnumSelect.WaitItems(new[] { "Unknown", "Pending", "Failed", "Finished" }); status.FieldValue.EnumSelect.SelectValueByText("Failed"); status.Save.Click(); status.Value.WaitText("Failed"); var timestamp = detailsPage.RootAccordion.FindField("Timestamp"); timestamp.Edit.Click(); timestamp.FieldValue.Date.ClearAndInputText("13.12.2013"); timestamp.Save.Click(); timestamp.Value.Text.Wait().That(Does.StartWith("2013-12-13")); document.FileId = "Abc"; document.Status = DocumentPrintingStatus.Failed; detailsPage = browser.Refresh(detailsPage); CheckDocumentPrintingInfoFields(detailsPage, document); detailsPage.Delete.Click(); printingInfoPage = detailsPage.ConfirmDeleteObjectModal.Delete.ClickAndGoTo <BusinessObjectTablePage>(); printingInfoPage.OpenFilter.Click(); printingInfoPage.FilterModal.GetFilter("Id").Input.ClearAndInputText(document.Id.ToString()); printingInfoPage.FilterModal.Apply.Click(); printingInfoPage.NothingFound.WaitPresence(); printingInfoPage.BusinessObjectItems.WaitAbsence(); }