Ejemplo n.º 1
0
        public CompetitionDetails CreateCompetition(CompPhaseDetails phaseDetails, bool isPublic = true)
        {
            CompetitionDetails details = new CompetitionDetails();

            FrameworkBase.Log.LogMessage("Creating new Competition");
            if (!IsCreateNewCompetitionButtonVisible())
            {
                ClickMyCodaLabLink();
            }

            details.Title       = StringUtilities.GetRandomPlainString(10);
            details.Description = StringUtilities.GetRandomPlainString(30);
            details.CreatedBy   = Pages.HomePage.GetLoggedInUserName();

            ClickCreateNewCompetitionLink();
            ClickStartInWizard();
            CreatePage.MetaDataPage.SetTitle(details.Title);
            CreatePage.MetaDataPage.SetShortDescription(details.Description);
            CreatePage.ClickSave();
            CreatePage.ClickNext();
            CreatePage.WaitForTabSection(CompetitionCreatePageOps.Tab.PhaseDetails);

            CreatePage.PhaseDetailsPage.AddNewPhase(phaseDetails, 1);
            CreatePage.ClickSave();

            CreatePage.SelectTab(CompetitionCreatePageOps.Tab.Publish);
            if (isPublic)
            {
                CreatePage.PublishPage.CheckPublishCompetition();
                CreatePage.ClickFinish();
            }

            return(details);
        }
        public List <CompPhaseDetails> GetAllPhaseDetails()
        {
            List <CompPhaseDetails> details = new List <CompPhaseDetails>();
            string phaseXpath = PhaseDetails.PhaseCustomXpath.Replace("[{0}]", "");

            for (int i = 1; i < Elements.GetElements(By.XPath(phaseXpath)).Count; i++)
            {
                ClickExpandButtonForPhase(i);
                CompPhaseDetails det = new CompPhaseDetails();
                det.Titile         = Operations.GetTextFromTextBox(Elements.GetElements(By.XPath(PhaseDetails.PhaseTitle))[i - 1]);
                det.StartDate      = Operations.GetElementInnerText(Elements.GetElements(By.XPath(PhaseDetails.PhaseStartDate))[i - 1]);
                det.MaxSubmissions = Convert.ToInt32(Operations.GetTextFromTextBox(Elements.GetElements(By.XPath(PhaseDetails.PhaseMaximumSubmission))[i - 1]));
                det.DataSets       = GetAllDataSetDetails(i);
                ClickCollapseButtonForPhase(i);
                details.Add(det);
            }

            return(details);
        }
        public void AddNewPhase(CompPhaseDetails details, int phaseIndex)
        {
            SetPhaseTitle(details.Titile, phaseIndex);
            SetPhaseStartDate(details.StartDate, phaseIndex);
            SetPhaseMaxSubmission(details.MaxSubmissions, phaseIndex);

            if (details.DataSets.Count > 0)
            {
                ClickExpandButtonForPhase(phaseIndex);
                foreach (var item in details.DataSets)
                {
                    ClickAddDataSetForPhase(phaseIndex);
                    SetDataSetType(item.DataSetType, phaseIndex);
                    SetDataSetBlobURL(item.BlobURL, phaseIndex);
                    SetDataSetAccessString(item.AccessString, phaseIndex);
                    ClickApplyLinkForDataSet(phaseIndex);
                }
                ClickCollapseButtonForPhase(phaseIndex);
            }
        }