示例#1
0
        public void FilterAsset()
        {
            //click on filter
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(36, "Locator"), ExcelLib.ReadData(36, "Value"));

            IList<IWebElement> dd_Room = GlobalDefinition.driver.FindElements(By.XPath(".//*[@id='assetDropdown_listbox']/li"));
            int RoomCount = dd_Room.Count;

            for (int i = 0; i < RoomCount; i++)
            {
                if (dd_Room[i].Text == "Sky")
                {
                    dd_Room[i].Click();
                }
            }
            //Check if asset created 
            string Xpath_start = ".//*[@id='AssetList']/tr[";
            string Xpath_end = "]/td[1]";

            int l = 1;
            while (GlobalDefinition.isElementPresent(Xpath_start + l + Xpath_end))
            {
                string Roomnamel = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='AssetList']/tr[" + l + "]/td[1]")).Text;

                if (Roomnamel == "Sky")
                {
                    Base.test.Log(LogStatus.Pass, "Room name matches the filter");
                }
                else
                {
                    Base.test.Log(LogStatus.Fail, "Room name does not match the filter");
                } l++;
            }
        }
        /// <summary>
        /// File-in and process the actions contained in the node.
        /// </summary>
        /// <param name="processor">Interchange format processor responsible for the processing context.</param>
        /// <param name="parseErrorSink">Error sink for reporting parse errors.</param>
        /// <param name="sourceCodeService">Source code service that can convert tokens to source code span and reports issues.</param>
        /// <returns>Return an interchange unit node for annotation, usually just self.</returns>
        public override InterchangeUnitNode FileIn(InterchangeFormatProcessor processor, IParseErrorSink parseErrorSink, ISourceCodeReferenceService sourceCodeService)
        {
            if (processor == null)
            {
                throw new ArgumentNullException("processor");
            }
            if (parseErrorSink == null)
            {
                throw new ArgumentNullException("parseErrorSink");
            }
            if (sourceCodeService == null)
            {
                throw new ArgumentNullException("sourceCodeService");
            }
            // ALL instance vars must be set. If one is missing, then source code bug, and
            //   InterchangeFormatParser.ParseGlobalVariable/ConstantDefinition() should have reported the error.
            if (this.GlobalName == null)
            {
                return(this);
            }

            GlobalDefinition definition = this.CreateDefinition(processor, sourceCodeService);

            this.Definfition = definition;
            // This may fail, but we don't care. If failed, it reported the error through its error sink.
            processor.FileInProcessor.FileInGlobal(definition);
            return(this);
        }
示例#3
0
        public void Upload_Logo()
        {
            //populate in collection
            ExcelLib.PopulateInCollection(Global.Base.ExcelPath, "Settings");

            //Click on Admin tab
            Global.GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(2, "Locator"), ExcelLib.ReadData(2, "Value"));
            Thread.Sleep(2000);

            //Select Settings option under admin tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(3, "Locator"), ExcelLib.ReadData(3, "Value"));
            Thread.Sleep(2000);

            //Click on Logo tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(41, "Locator"), ExcelLib.ReadData(41, "Value"));

            //Upload Logo
            Thread.Sleep(1000);
            // GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(43, "Locator"), ExcelLib.ReadData(43,"Value"), ExcelLib.ReadData(43,"Input"));
           IWebElement imgupload = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='imgUploadPreview']"));
            imgupload.Click();
            //imgupload.SendKeys(@"C:\Users\sonia\Desktop\Crate\crate logo.png");
            AutoItX3 auto = new AutoItX3();
            auto.WinActivate("Open");
            auto.Send(@"C:\Users\sonia\Desktop\Crate\crate logo.png");
            auto.Send("{ENTER}");

            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(44, "Locator"), ExcelLib.ReadData(44, "Value"));
        }                                                                            
示例#4
0
        public void Addnewasset_Invaliddata()
        {
            //Click on Add new asset
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(20, "Locator"), ExcelLib.ReadData(20, "Value"));

            //select asset type
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(21, "Locator"), ExcelLib.ReadData(21, "Value"));
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(22, "Locator"), ExcelLib.ReadData(22, "Value"));

            //Enter asset name
           // GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"), ExcelLib.ReadData(23, "Input"));
            for (int i = 2; i < 5; i++)
            {
                //enter data
                GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"), ExcelLib.ReadData(i, "InV_Asset name"));


                //Select room
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(24, "Locator"), ExcelLib.ReadData(24, "Value"));
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));
                string selectedroom = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));

                //click on save btn
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(26, "Locator"), ExcelLib.ReadData(26, "Value"));

                //Get text from validation error
                string error = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(33, "Locator"), ExcelLib.ReadData(33, "Value"));
                Base.test.Log(LogStatus.Pass, "Test Passed with alert message : " + i + error);
            }

        }
示例#5
0
        public void XmlSerialisationRoundTrip()
        {
            GlobalDefinition gd = new GlobalDefinition();

            gd.RandomCatchments(5, 1, 5);
            string           sgd    = gd.XmlSerialize();
            GlobalDefinition result = SerializationHelper.XmlDeserialize <GlobalDefinition>(sgd);

            List <CellDefinition> gdCells = gd.GetFlatCellList();

            foreach (CatchmentDefinition catchment in gd)
            {
                Assert.That(catchment.Cells, Is.SubsetOf(gdCells));
            }

            List <CellDefinition> rCells = result.GetFlatCellList();

            foreach (CatchmentDefinition catchment in result)
            {
                Assert.That(catchment.Cells, Is.SubsetOf(rCells));
            }

            foreach (CatchmentDefinition cd in result)
            {
                foreach (CellDefinition cell in cd.Cells)
                {
                    Assert.That(cell.CatchmentId, Is.EqualTo(cd.Id));
                }
            }

            AssertThatDefinitionsAreEquivalent(result, gd);
        }
示例#6
0
        public void AddCatchment()
        {
            GlobalDefinition    gd        = new GlobalDefinition();
            CatchmentDefinition catchment = new CatchmentDefinition {
                Id = "catchment-124"
            };

            const int numCells = 9;

            for (int cells = 0; cells < numCells; cells++)
            {
                CellDefinition cell = new CellDefinition {
                    Id = "cell-" + cells
                };
                catchment.Cells.Add(cell);
            }

            gd.AddCatchment(catchment);

            Assert.That(gd.Count, Is.EqualTo(1));

            List <CellDefinition> gdCells = gd.GetFlatCellList();

            Assert.AreEqual(gdCells.Count, numCells);
            foreach (CellDefinition cell in gdCells)
            {
                Assert.That(catchment.Cells, Contains.Item(cell));
            }
        }
示例#7
0
        public void BinarySerialisationRoundTrip()
        {
            GlobalDefinition gd = new GlobalDefinition();

            gd.RandomCatchments(5, 1, 5);

            BinaryFormatter  formatter = new BinaryFormatter();
            GlobalDefinition result;

            using (MemoryStream stream = new MemoryStream())
            {
                formatter.Serialize(stream, gd);
                stream.Position = 0;
                result          = (GlobalDefinition)formatter.Deserialize(stream);
            }

            List <CellDefinition> rCells = result.GetFlatCellList();

            foreach (CatchmentDefinition catchment in result)
            {
                Assert.That(catchment.Cells, Is.SubsetOf(rCells));
                foreach (CellDefinition cell in catchment.Cells)
                {
                    Assert.That(cell.CatchmentId, Is.EqualTo(catchment.Id));
                }
            }

            AssertThatDefinitionsAreEquivalent(result, gd);
        }
示例#8
0
        public void XmlSerialisationToFileRoundTrip()
        {
            GlobalDefinition gd = new GlobalDefinition();

            gd.RandomCatchments(3, 1, 5);
            var filename = Path.GetTempFileName();

            try
            {
                gd.XmlSerialize(filename);
                GlobalDefinition result = SerializationHelper.XmlDeserialize <GlobalDefinition>(new FileInfo(filename));
                AssertThatDefinitionsAreEquivalent(result, gd);

                // test the serialisation of the catchment id
                foreach (CatchmentDefinition cd in result)
                {
                    foreach (CellDefinition cell in cd.Cells)
                    {
                        Assert.That(cell.CatchmentId, Is.EqualTo(cd.Id));
                    }
                }
            }
            finally
            {
                if (File.Exists(filename))
                {
                    File.Delete(filename);
                }
            }
        }
示例#9
0
        public static void AssertThatDefinitionsAreEquivalent(GlobalDefinition a, GlobalDefinition b)
        {
            // compare the catchments
            Assert.That(a.Count, Is.EqualTo(b.Count));
            for (int i = 0; i < b.Count; i++)
            {
                CatchmentDefinition aCatchment = a[i];
                CatchmentDefinition bCatchment = b[i];
                Assert.That(aCatchment.Id, Is.EqualTo(bCatchment.Id));
                Assert.That(aCatchment.Cells.Count, Is.EqualTo(bCatchment.Cells.Count));

                for (int j = 0; j < bCatchment.Cells.Count; j++)
                {
                    Assert.That(aCatchment.Cells[j].Id, Is.EqualTo(bCatchment.Cells[j].Id));
                }
            }

            // Compare the cells
            List <CellDefinition> aCells = a.GetFlatCellList();
            List <CellDefinition> bCells = b.GetFlatCellList();

            Assert.That(aCells.Count, Is.EqualTo(bCells.Count));
            for (int i = 0; i < bCells.Count; i++)
            {
                CellDefinition ac = aCells[i];
                CellDefinition bc = bCells[i];
                Assert.That(ac.Id, Is.EqualTo(bc.Id));
                AssertThatModelRunDefinitionsAreEqual(ac.ModelRunDefinition, bc.ModelRunDefinition);
            }
        }
示例#10
0
        public void Upload_Logo()
        {
            //populate in collection
            ExcelLib.PopulateInCollection(Global.Base.ExcelPath, "Settings");

            //Click on Admin tab
            Global.GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(2, "Locator"), ExcelLib.ReadData(2, "Value"));
            Thread.Sleep(2000);

            //Select Settings option under admin tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(3, "Locator"), ExcelLib.ReadData(3, "Value"));
            Thread.Sleep(2000);

            //Click on Logo tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(41, "Locator"), ExcelLib.ReadData(41, "Value"));
            Thread.Sleep(1000);

            //Click on Upload Logo
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(43, "Locator"), ExcelLib.ReadData(43, "Value"));

            AutoItX3 auto = new AutoItX3();

            auto.WinActivate("Open");
            auto.Send(@"C:\Users\sonia\Desktop\CRATE\crate logo.png");
            auto.Send("{ENTER}");

            //Click on save btn
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(44, "Locator"), ExcelLib.ReadData(44, "Value"));
        }
示例#11
0
        /// <summary>
        /// ToLockMsg
        /// </summary>
        /// <param name="lockItem">thisLockItem</param>
        /// <returns>string</returns>
        public static string ToLockMsg(this LockItem lockItem)
        {
            if (null == lockItem)
            {
                GlobalDefinition.LoggerWrapper.LogDevError("[ToLockMsg][lockItem == null]");
                return(string.Empty);
            }

            GlobalDefinition.LoggerWrapper.LogDevWarning("[ToLockMsg][Comment:" + lockItem.Comment + "]");

            var lockTip = GlobalDefinition.ToLocalLanguge("UID_PA_Item_LockedInfo");

            if (string.IsNullOrEmpty(lockTip))
            {
                GlobalDefinition.LoggerWrapper.LogDevWarning("[ToLockMsg][lockTip is empty]");
                return(string.Empty);
            }

            if (string.IsNullOrEmpty(lockItem.Comment))
            {
                GlobalDefinition.LoggerWrapper.LogDevWarning("[ToLockMsg][lockItem.Comment is empty]");
                return(lockTip);
            }

            var c = GlobalDefinition.ToLocalLanguge(lockItem.Comment);

            if (string.IsNullOrEmpty(c))
            {
                GlobalDefinition.LoggerWrapper.LogDevWarning("[ToLockMsg][not find resource:" + lockItem.Comment + "]");
                return(lockTip);
            }

            return(string.Format("{0} ({1}...)", lockTip, c));
        }
示例#12
0
        public void EditAssetname()
        {
            //Click on Edit button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(30, "Locator"), ExcelLib.ReadData(30, "Value"));

            //Change asset name
            GlobalDefinition.GetClear(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"));
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"), ExcelLib.ReadData(23, "Input"));

            //Click on save btn
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(31, "Locator"), ExcelLib.ReadData(31, "Value"));

            string Editasset = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(32, "Locator"), ExcelLib.ReadData(32, "Value"));
            if (Editasset == ExcelLib.ReadData(23, "Input"))
            {
                Base.test.Log(LogStatus.Pass, "Edit Asset successful");

            }
            else
            {
                Base.test.Log(LogStatus.Fail, "Edit Asset unsuccessful");
            }

         
        }
示例#13
0
        public void Update_dashboard()
        {
            //populate in collection
            ExcelLib.PopulateInCollection(Global.Base.ExcelPath, "Settings");

            //Click on Admin tab
            Global.GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(2, "Locator"), ExcelLib.ReadData(2, "Value"));
            Thread.Sleep(2000);
            //Select Settings option under admin tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(3, "Locator"), ExcelLib.ReadData(3, "Value"));
            Thread.Sleep(2000);

            //Click on Dashboard tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(37, "Locator"), ExcelLib.ReadData(37, "Value"));

            //Enter Text
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(38, "Locator"), ExcelLib.ReadData(38, "Value"), ExcelLib.ReadData(38, "Input"));
            

            //Click update button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(39, "Locator"), ExcelLib.ReadData(39, "Value"));

            //Check if the dashboard header is updated
            string dashheader= GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(40, "Locator"), ExcelLib.ReadData(40, "Value"));

            if (dashheader == ExcelLib.ReadData(38, "Input"))
            {
                Base.test.Log(LogStatus.Pass, "Dashboard Header updated");
            }
            else
            {
                Base.test.Log(LogStatus.Fail, "Dashboard Header not updated");
            }

        }
示例#14
0
 public GriddedModelRunner(GlobalDefinition definition)
 {
     models = new Dictionary <string, Dictionary <string, Tuple <CellDefinition, IPointTimeSeriesSimulation> > >();
     for (int i = 0; i < definition.Catchments.Count; i++)
     {
         createCatchment(definition.Catchments[i]);
     }
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="BaseGriddedCatchmentObjectiveEvaluator"/> class.
        /// </summary>
        /// <param name="globalDefinitionFileInfo">The global definition file info.</param>
        /// <param name="objectivesDefinitionFileInfo">The objectives definition file info.</param>
        /// <param name="rank">The rank of the process in the 'world'</param>
        /// <param name="size">World communicator size</param>
        /// <param name="worldCommunicator">The world communicator</param>
        protected BaseGriddedCatchmentObjectiveEvaluator(FileInfo globalDefinitionFileInfo, FileInfo objectivesDefinitionFileInfo, int rank, int size, IIntracommunicatorProxy worldCommunicator)
        {
            // funny smell: WorldRank and rank are the same thing, always. Should remove one.
            this.rank  = rank;
            this.size  = size;
            WorldRank  = GetWorldRank();
            IsFirstRun = true;

            if (IsMaster && GetWorldSize() < 2)
            {
                throw new ConfigurationException("At least 2 MPI processes are required to run this application.");
            }

            ObjectiveDefinitionFileName = objectivesDefinitionFileInfo.FullName;

            Log.DebugFormat("Rank {0}: Loading global definition", WorldRank);

            //Added by Bill Wang on 27/10/2014 to read split catchment-based calibration definition files
            if (globalDefinitionFileInfo.FullName.EndsWith(".csv", true, null))
            {
                StreamReader sr = null;
                GlobalDefinition = new GlobalDefinition();
                try
                {
                    sr = new StreamReader(globalDefinitionFileInfo.FullName);
                    sr.ReadLine(); //skip the header line
                    for (string line = sr.ReadLine(); line != null; line = sr.ReadLine())
                    {
                        FileInfo         catchmentFileInfo = new FileInfo(line.Split(new char[] { ',' })[1]);
                        GlobalDefinition catchmentDef      = SerializationHelper.XmlDeserialize <GlobalDefinition>(catchmentFileInfo);
                        foreach (var cat in catchmentDef.Catchments)
                        {
                            GlobalDefinition.AddCatchment(cat);
                        }
                    }
                }
                catch (Exception e)
                {
                    Log.Error(e.ToString());
                    throw e;
                }
                finally
                {
                    if (sr != null)
                    {
                        sr.Close();
                    }
                }
            }
            else
            {
                GlobalDefinition = SerializationHelper.XmlDeserialize <GlobalDefinition>(globalDefinitionFileInfo);
            }

            Log.DebugFormat("Rank {0}: global definition complete", WorldRank);

            world = worldCommunicator;
        }
        /// <summary>
        /// Creates the catchment communicators.
        /// </summary>
        /// <param name="workAllocator">The work allocator.</param>
        private void CreateCommunicators(IWorkAllocator workAllocator)
        {
            // create the communicators (creating communicators is a collective operation, all processes that belong to the new communicator
            // must participate in the call).
            // It is also important that all processes create the communicators in the same order to avoid deadlock
            // There is one communicator per catchment
            Log.DebugFormat("Rank {0}: Creating communicators", WorldRank);

            // we need to sort the list of catchments by catchment CatchmentId.
            // All processes must have the same catchment order or they can deadlock when creating communicators that span processes.
            GlobalDefinition.SortCatchmentsById();

            foreach (CatchmentDefinition catchment in GlobalDefinition)
            {
                Log.DebugFormat("Rank {0}: catchment {1} Creating communicator for {2} processes", WorldRank, catchment.Id, workAllocator.RanksByCatchment[catchment.Id].Count);
                IGroupProxy catchmentGroup = CreateGroup(workAllocator.RanksByCatchment[catchment.Id].ToArray());
                Log.DebugFormat("Rank {0}: Catchment group created, size = {1}", WorldRank, catchmentGroup.Size);
                IIntracommunicatorProxy catchmentCommunicator = CreateIntracommunicatorProxy(catchmentGroup);
                if (catchmentCommunicator != null)
                {
                    Log.DebugFormat("Rank {0}: Communicator created, rank = {1} size = {2}", WorldRank, catchmentCommunicator.GetRank(this.WorldRank), catchmentCommunicator.Size);
                }
                else
                {
                    Log.DebugFormat("Rank {0}: Communicator created, I am not a member", WorldRank);
                }

                // catchmentCommunicator will be null if the current rank is not a member of the catchmentGroup.
                // This is OK, as each rank only requires the communicators for catchments it is involved in.
                if (catchmentCommunicator != null)
                {
                    Debug.Assert(workAllocator.RanksByCatchment[catchment.Id].Contains(WorldRank));
                    communicatorsByCatchmentId.Add(catchment.Id, catchmentCommunicator);

#if CELL_WEIGHTED_SUMS
                    // If I am the catchment coordinator for at least one catchment, then I will need the dictionary of cached
                    // catchment statistics evaluators
                    if (catchmentCommunicator.GetRank(this.WorldRank) == 0)
                    {
                        Log.DebugFormat("Rank {0}: I am catchment coordinator. Creating stats evaluator cache.", WorldRank);

                        // count how often this process acts as catchment coordinator
                        CatchmentCoordinatorCount++;

                        // create the statistics evaluator cache
                        if (CatchmentStatisticsEvaluatorCache == null)
                        {
                            CatchmentStatisticsEvaluatorCache = new Dictionary <string, CatchmentStatisticsEvaluator <ICloneableSimulation, MpiSysConfig> >();
                        }
                    }
#endif
                }
                else
                {
                    Debug.Assert(!workAllocator.RanksByCatchment[catchment.Id].Contains(WorldRank));
                }
            }
        }
示例#17
0
        public void Addroom_Valid()
        {
            // Click on Add Room button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(5, "Locator"), ExcelLib.ReadData(5, "Value"));
            //Enter Room name
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(6, "Locator"), ExcelLib.ReadData(6, "Value"), ExcelLib.ReadData(6, "Input"));
            //Click on Color picker
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(7, "Locator"), ExcelLib.ReadData(7, "Value"));

            //Select the color
            IWebElement color = GlobalDefinition.driver.FindElement(By.XPath("//div[@class='k-hsv-gradient']"));

            color.GetCssValue("#804040");
            Thread.Sleep(2000);
            color.Click();
            // Click on apply button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(9, "Locator"), ExcelLib.ReadData(9, "Value"));
            Thread.Sleep(1000);

            //Click on save button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(10, "Locator"), ExcelLib.ReadData(10, "Value"));
            Thread.Sleep(2000);

            // Handle validation alert if occurs
            //bool isElementDisplayed = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='beehive-alert']/p")).Displayed;

            //if (isElementDisplayed == true)
            //{
            //    string alert = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(16, "Locator"), ExcelLib.ReadData(16, "Value"));
            //    Base.test.Log(LogStatus.Error, "test failed " + alert);
            //}
            //    return;

            Thread.Sleep(1000);
            // last page on pagination
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(34, "Locator"), ExcelLib.ReadData(34, "Value"));
            Thread.Sleep(1000);

            string xpath_start = ".//*[@id='Room-List']/tr[";
            string xpath_end   = "]/td[2]";

            int i = 1;

            while (GlobalDefinition.isElementPresent(xpath_start + i + xpath_end))
            {
                // string Roomname = GlobalDefinition.GetTextValue(GlobalDefinition.driver,ExcelLib.ReadData(14,"Locator"),ExcelLib.ReadData(14,"Value"));
                string roomname = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='Room-List']/tr[" + i + "]/td[2]")).Text;
                if (roomname == ExcelLib.ReadData(6, "Input"))
                {
                    Base.test.Log(LogStatus.Pass, "Room added successfully");
                }
                else
                {
                    Base.test.Log(LogStatus.Fail, "Add new room unsuccessfull");
                }
                i++;
            }
        }
示例#18
0
        protected Allocator(GlobalDefinition globalDefinition, IIntracommunicatorProxy communicator)
        {
            if (globalDefinition == null)
            {
                throw new ArgumentNullException("globalDefinition");
            }

            this.communicator = communicator;
            GlobalDef         = globalDefinition;
        }
示例#19
0
 /// <summary>
 /// unit to local language
 /// </summary>
 /// <returns></returns>
 public string AgeUnitToL10nString()
 {
     GlobalDefinition.LoggerWrapper.LogTraceInfo("public string AgeUnitToL10nString() start");
     if (null != AgeUnit)
     {
         return(GlobalDefinition.ToLocalLanguge("UID_PA_AgeUnit_" + AgeUnit.ToString()));
     }
     GlobalDefinition.LoggerWrapper.LogTraceInfo("public string AgeUnitToL10nString() end");
     return(string.Empty);
 }
示例#20
0
        public void EditAssetRoom()
        {
            //Click on Edit button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(30, "Locator"), ExcelLib.ReadData(30, "Value"));

            //select room

            GlobalDefinition.SelectDropDown(GlobalDefinition.driver, ExcelLib.ReadData(24, "Locator"), ExcelLib.ReadData(24, "Value"), ExcelLib.ReadData(24, "Input"));

            //Click on save
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(31, "Locator"), ExcelLib.ReadData(31, "Value"));
        }
示例#21
0
        public void NavSettingpage()
        { //populate in collection
            ExcelLib.PopulateInCollection(Base.ExcelPath, "Settings");

            //Click on Admin tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, Global.ExcelLib.ReadData(2, "Locator"), Global.ExcelLib.ReadData(2, "Value"));
            Base.test.Log(LogStatus.Info, "Clicked on Admin link");

            //Select Settings option under admin tab
            Thread.Sleep(1000);
            GlobalDefinition.ActionButton(GlobalDefinition.driver, Global.ExcelLib.ReadData(3, "Locator"), Global.ExcelLib.ReadData(3, "Value"));
        }
示例#22
0
        public void TestCellLists()
        {
            GlobalDefinition gd = new GlobalDefinition();

            gd.RandomCatchments(7);
            List <CellDefinition> gdCells = gd.GetFlatCellList();

            foreach (CatchmentDefinition catchment in gd)
            {
                Assert.That(catchment.Cells, Is.SubsetOf(gdCells));
            }
        }
示例#23
0
        public void DeleteRoom()
        {           
            //Click on Delete
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(18, "Locator"), ExcelLib.ReadData(18, "Value"));
            GlobalDefinition.driver.SwitchTo().Alert().Accept();

            //Get text from alert
            string alert = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(16, "Locator"), ExcelLib.ReadData(16, "Value"));
            Base.test.Log(LogStatus.Pass, "Test Passed with alert message : " + alert);
            
            //Close Alert
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(17, "Locator"), ExcelLib.ReadData(17, "Value"));
        }
示例#24
0
        public void AddNewAsset_Validdata()
        {
            //Click on Add new asset
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(20, "Locator"), ExcelLib.ReadData(20, "Value"));

            //select asset type
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(21, "Locator"), ExcelLib.ReadData(21, "Value"));
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(22, "Locator"), ExcelLib.ReadData(22, "Value"));

            //Enter asset name
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"), ExcelLib.ReadData(23, "Input"));
            // for (int i = 2; i < 5; i++)
            //{
            //enter data
            //  GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(23, "Locator"), ExcelLib.ReadData(23, "Value"), ExcelLib.ReadData(i, "V_Asset name"));

            //Select room
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(24, "Locator"), ExcelLib.ReadData(24, "Value"));
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));
            string roomname = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));

            //click on save btn
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(26, "Locator"), ExcelLib.ReadData(26, "Value"));
            //}
            //Click last page button on pagination
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(35, "Locator"), ExcelLib.ReadData(35, "Value"));

            //Check if asset created
            string Xpath_start = ".//*[@id='AssetList']/tr[";
            string Xpath_end   = "]/td[1]";

            int l = 1;

            while (GlobalDefinition.isElementPresent(Xpath_start + l + Xpath_end))
            {
                string Roomnamel = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='AssetList']/tr[" + l + "]/td[1]")).Text;

                if (Roomnamel == roomname)
                {
                    Base.test.Log(LogStatus.Info, "Room name matched");

                    string Assetnamel = GlobalDefinition.driver.FindElement(By.XPath(".//*[@id='AssetList']/tr[" + l + "]/td[2]")).Text;
                    if (Assetnamel == ExcelLib.ReadData(23, "Input"))
                    {
                        Base.test.Log(LogStatus.Pass, "Asset Created");
                    }
                }
                l++;
            }
        }
示例#25
0
        public void EditRoom_blank()
        {
            //Click on Edit Button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(15, "Locator"), ExcelLib.ReadData(15, "Value"));

            //Edit room name
            GlobalDefinition.GetClear(GlobalDefinition.driver, ExcelLib.ReadData(12, "Locator"), ExcelLib.ReadData(12, "Value"));

            //Click on update btn
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(13, "Locator"), ExcelLib.ReadData(13, "Value"));

            //Get text from alert
            string alert = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(16, "Locator"), ExcelLib.ReadData(16, "Value"));
            Base.test.Log(LogStatus.Pass, "Test Passed with alert message :" + alert);
        }
示例#26
0
        public void DeleteAsset()
        {
            // search for record and delete asset
            IList<IWebElement> deleteasset = GlobalDefinition.driver.FindElements(By.XPath("/div[@class='medium-12 columns']//div/h5[text()='Assets']"));
            int Dasset = deleteasset.Count;
            for (int n = 1; n <= Dasset; n++)
                //for (int i = 1; i == 10; i++)
            {
                Base.test.Log(LogStatus.Info, "Entered the delete search loop");
                string roomname = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(27, "Locator"), ExcelLib.ReadData(27, "Value"));
                string assetname = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(28, "Locator"), ExcelLib.ReadData(28, "Value"));
                string selectedroom = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));

                if (roomname == selectedroom && assetname == ExcelLib.ReadData(23, "Input"))
                {

                    //Click on delete button
                    GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(29, "Locator"), ExcelLib.ReadData(29, "Value"));
                    GlobalDefinition.driver.SwitchTo().Alert().Accept();
                   
                }
                else
                {
                    Base.test.Log(LogStatus.Fail, "Delete search not found");
                }                              
            }

            //Check if the asset is deleted
            for (int i = 1; i == 10; i++)
            {
                Base.test.Log(LogStatus.Info, "Entered the delete search loop");
                string roomname = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(27, "Locator"), ExcelLib.ReadData(27, "Value"));
                string assetname = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(28, "Locator"), ExcelLib.ReadData(28, "Value"));
                string selectedroom = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(25, "Locator"), ExcelLib.ReadData(25, "Value"));

                if (roomname == selectedroom && assetname == ExcelLib.ReadData(23, "Input"))
                {

                    Base.test.Log(LogStatus.Pass, "Asset not deleted");
                    return;
                }
                else
                {
                    Base.test.Log(LogStatus.Fail, "Asset deleted successfully");
                }
            }

        }
示例#27
0
        public string ToLocalCmWithUnitString()
        {
            if (string.IsNullOrEmpty(this.Num))
            {
                return(string.Empty);
            }

            var temp = ConvertPatientHeight(this.Num);

            if (this.Unit == HeightUnit.Inch)
            {
                return(Math.Round(temp * InchToCm, 2).ToString(CultureInfo.InvariantCulture) + GlobalDefinition.ToLocalLanguge("UID_PR_PatientHeight_cm"));
            }
            else
            {
                return(Math.Round(temp, 2).ToString(CultureInfo.InvariantCulture) + GlobalDefinition.ToLocalLanguge("UID_PR_PatientHeight_cm"));
            }
        }
示例#28
0
        /// <summary>
        /// ToLocalKgWithUnitString
        /// </summary>
        /// <returns>string</returns>
        public string ToLocalKgWithUnitString()
        {
            if (string.IsNullOrEmpty(this.Num))
            {
                return(string.Empty);
            }

            var temp = SetPatientWeight(this.Num);

            if (this.Unit == WeightUnit.Lb)
            {
                return(Math.Round(temp * LbToKg, 2).ToString(CultureInfo.InvariantCulture) +
                       GlobalDefinition.ToLocalLanguge("UID_PR_PatientWeight_kg"));
            }
            else
            {
                return(Math.Round(temp, 2) + GlobalDefinition.ToLocalLanguge("UID_PR_PatientWeight_kg"));
            }
        }
示例#29
0
        public void AddRoom_Invalid()
        {// Click on Add Room button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(5, "Locator"), ExcelLib.ReadData(5, "Value"));
            //Enter Room name
            //GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(6, "Locator"), ExcelLib.ReadData(6, "Value"), ExcelLib.ReadData(6, "Input"));

            for (int i = 2; i<5; i++)
            {
                // Enter room name
                GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(6, "Locator"), ExcelLib.ReadData(6, "Value"), ExcelLib.ReadData(i, "InValid_Name"));
                
                //Click on Color picker
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(7, "Locator"), ExcelLib.ReadData(7, "Value"));
              
             
                //Select the color
                IWebElement color = GlobalDefinition.driver.FindElement(By.XPath("//div[@class='k-hsv-gradient']"));
               
                color.GetCssValue("#804056");
               
                color.Click();
              
                // Click on apply button
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(9, "Locator"), ExcelLib.ReadData(9, "Value"));
                

                //Click on save button
                Global.GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(10, "Locator"), ExcelLib.ReadData(10, "Value"));
               

                string alert = GlobalDefinition.GetTextValue(GlobalDefinition.driver, ExcelLib.ReadData(16, "Locator"), ExcelLib.ReadData(16, "Value"));
                Base.test.Log(LogStatus.Pass,"invalid input "+i+ "gets " + alert);

                //Close the alert
                GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(17, "Locator"), ExcelLib.ReadData(17, "Value"));

                // Clear the textbox
                GlobalDefinition.GetClear(GlobalDefinition.driver, ExcelLib.ReadData(6, "Locator"), ExcelLib.ReadData(6, "Value"));
            }
                     
            
        }
示例#30
0
        public void AddCompany()
        {
            //Populate in collectiion
            ExcelLib.PopulateInCollection(Base.ExcelPath, "Companies");

            //click on admin tab
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(2, "Locator"), ExcelLib.ReadData(2, "Value"));

            //Click on Companies option
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(3, "Locator"), ExcelLib.ReadData(3, "Value"));

            //Click add new button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(4, "Locator"), ExcelLib.ReadData(4, "Value"));

            //enter text in company name
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(5, "Locator"), ExcelLib.ReadData(5, "Value"), ExcelLib.ReadData(5, "Input"));

            //enter email address
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(6, "Locator"), ExcelLib.ReadData(6, "Value"), ExcelLib.ReadData(6, "Input"));

            //enter address
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(7, "Locator"), ExcelLib.ReadData(7, "Value"), ExcelLib.ReadData(7, "Input"));

            //click the 1st suggestion
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(8, "Locator"), ExcelLib.ReadData(8, "Value"));

            //eneter website
            GlobalDefinition.Textbox(GlobalDefinition.driver, ExcelLib.ReadData(14, "Locator"), ExcelLib.ReadData(14, "Value"), ExcelLib.ReadData(14, "Input"));

            //click to browse logo
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(15, "Locator"), ExcelLib.ReadData(15, "Value"));

            //upload logo
            AutoItX3 auto = new AutoItX3();

            auto.WinActivate("Open");
            auto.Send(@"C:\Users\sonia\Desktop\Crate\experieco.png");
            auto.Send("{ENTER}");

            // Click on save button
            GlobalDefinition.ActionButton(GlobalDefinition.driver, ExcelLib.ReadData(16, "Locator"), ExcelLib.ReadData(16, "Value"));
        }