private void CreateItemDialogCreateSimpleItem(AddinRibbonController ribbon, string newItemName, string newItemDescr) { //Login AddinTestUtility.LoginExpectSuccess(ribbon, AddinTestUtility.LoginEmail, AddinTestUtility.LoginPsw); //Create a data range from which to create item var sheet = _wb.Wb.ActiveSheet as Excel.Worksheet; ExcelAutoUtility.SetCellValue(sheet, 1, 1, "colA"); ExcelAutoUtility.SetCellValue(sheet, 1, 2, "colB"); ExcelAutoUtility.SetCellValue(sheet, 2, 1, 1); ExcelAutoUtility.SetCellValue(sheet, 2, 2, 2); ExcelAutoUtility.SetCellValue(sheet, 3, 1, 3); ExcelAutoUtility.SetCellValue(sheet, 3, 2, 4); var range = sheet.get_Range("A1", "B3"); range.Select(); //Create item ribbon.InvokeButton(AddinRibbonButton.Create); var createItemDlg = CreateItemDriver.FindFromParent(ribbon.ExcelElement); createItemDlg.Name = newItemName; createItemDlg.Desc = newItemDescr; createItemDlg.SelectCreateVerifySuccess(); }
public void PublishDialog_ViaPublishItems_Success() { var ribbon = AddinRibbonController.Initialize(_app); //Insert an item to modify var ws = InsertOKToModifyItemData(ribbon, AddinTestUtility.ModifiableItemName, false); //getSecondInstance //Modify a cell var modValRow = 3; var modValCol = 2; int newVal = Convert.ToInt32(ExcelAutoUtility.GetCellValue(ws, modValRow, modValCol)) + 1; ExcelAutoUtility.SetCellValue(ws, modValRow, modValCol, newVal); //Publish //Get ribbon tab automation element again to get its newly-enabled instances of descendant buttons ribbon.Refresh(); ribbon.InvokeButton(AddinRibbonButton.PublishItems); var pubDlg = PublishDriver.FindFromParent(ribbon.ExcelElement); pubDlg.SelectPublishVerifySuccess(); //Verify ribbon.Refresh(); Assert.AreEqual(string.Empty, ribbon.ValidateExpectedButtonStates(ExpectedButtonStates.OnPublishableItemCell)); ws = InsertOKToModifyItemData(ribbon, AddinTestUtility.ModifiableItemName, true); //getSecondInstance Assert.AreEqual(newVal, Convert.ToInt32(ExcelAutoUtility.GetCellValue(ws, modValRow, modValCol))); }
public void CreateItemDialog_CreateSecondItemSameSheet_Success() { var ribbon = AddinRibbonController.Initialize(_app); //Login AddinTestUtility.LoginExpectSuccess(ribbon, AddinTestUtility.LoginEmail, AddinTestUtility.LoginPsw); //Insert item ribbon.InvokeButton(AddinRibbonButton.InsertItem); var itemDlg = InsertItemDriver.FindFromParent(ribbon.ExcelElement); itemDlg.SelectedItem = AddinTestUtility.ReadonlyItemName; itemDlg.AllowPublish = true; itemDlg.SelectInsertVerifySuccess(); //Wait for item to be inserted in item-named worksheet var newlyCreatedItemSheet = ExcelAutoUtility.GetWorkSheetWithTimeout(_wb.Wb, AddinTestUtility.ReadonlyItemName, AddinTestUtility.WebServiceResponsePopulateTimeout); ribbon.Refresh(); Assert.AreEqual(string.Empty, ribbon.ValidateExpectedButtonStates(ExpectedButtonStates.OnPublishableItemCell)); ExcelAutoUtility.SetCellValue(newlyCreatedItemSheet, 2, 48, "singleCellValue"); var range = newlyCreatedItemSheet.get_Range("AV2", "AV2"); range.Select(); //Force ribbon refresh in this special case of selecting range programmatically via excel automation //which does not result in ribbon refresh ribbon.ForceRibbonRefresh(); Assert.AreEqual(string.Empty, ribbon.ValidateExpectedButtonStates(ExpectedButtonStates.OnExistingAllowPublishItemSheetOffItemCell)); //Create the second item var newItemName = "uitest" + AddinTestUtility.GetUniqueSuffix(); var newItemDescr = "sample description #2"; ribbon.Refresh(); ribbon.InvokeButton(AddinRibbonButton.Create); var createItemDlg = CreateItemDriver.FindFromParent(ribbon.ExcelElement); createItemDlg.Name = newItemName; createItemDlg.Desc = newItemDescr; createItemDlg.SelectCreateVerifySuccess(); ribbon.Refresh(); Assert.AreEqual(string.Empty, ribbon.ValidateExpectedButtonStates(ExpectedButtonStates.OnPublishableItemCell)); }