Files
Umbraco-CMS/src/Umbraco.Tests/Integration/InstallPackage.cs
2013-04-25 08:44:01 -02:00

145 lines
6.4 KiB
C#

using System.IO;
using System.Linq;
using System.Threading;
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Interactions;
using Umbraco.Core;
using Umbraco.Tests.TestHelpers;
namespace Umbraco.Tests.Integration
{
[Ignore("We don't want to run Selenium tests on TeamCity")]
[TestFixture]
public class InstallPackage : BaseSeleniumTest
{
[SetUp]
public override void Initialize()
{
base.Initialize();
}
[TearDown]
public void TearDown()
{
base.TearDown();
}
[Test]
public void Install_Courier_Package()
{
Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/login.aspx?redir=");
Driver.FindElement(By.Id("lname")).Clear();
Driver.FindElement(By.Id("lname")).SendKeys("admin");
Driver.FindElement(By.Id("passw")).Clear();
Driver.FindElement(By.Id("passw")).SendKeys("test");
Driver.FindElement(By.Id("Button1")).Click();
Thread.Sleep(1000);
Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/umbraco.aspx#developer");
Thread.Sleep(2000);
var builder = new Actions(Driver);
var packagesNode = Driver.FindElement(By.XPath("//*[@id='init'][3]"));
builder.MoveToElement(packagesNode).DoubleClick().Build().Perform();
Thread.Sleep(1000);
var installPackageNode = Driver.FindElement(By.XPath("/html/body/div[2]/div/div/div[2]/div/div/div/div/ul/li/ul/li[3]/ul/li[4]/a/div"));
builder.MoveToElement(installPackageNode).Click().Build().Perform();
Thread.Sleep(1000);
var rightFrame = Driver.FindElement(By.XPath("//*[@id='right']"));
Driver.SwitchTo().Frame(rightFrame);
const string packagesDir = @"C:\\Downloads\\Packages\\";
var file = new DirectoryInfo(packagesDir).GetFiles().First(f => f.Name.ToLowerInvariant().StartsWith("Courier".ToLowerInvariant()));
Driver.FindElement(By.Id("cb")).Click();
Driver.FindElement(By.XPath("//input[@type='file']")).SendKeys(file.FullName);
Driver.FindElement(By.Id("body_ButtonLoadPackage")).Click();
Driver.FindElement(By.Id("body_acceptCheckbox")).Click();
Driver.FindElement(By.Id("body_ButtonInstall")).Click();
Thread.Sleep(1000);
var successPanel = Driver.FindElement(By.XPath("//*[@id='body_Panel1_content']"));
Assert.IsNotNull(successPanel);
}
[Test]
public void Install_Contour_Package()
{
Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/login.aspx?redir=");
Driver.FindElement(By.Id("lname")).Clear();
Driver.FindElement(By.Id("lname")).SendKeys("admin");
Driver.FindElement(By.Id("passw")).Clear();
Driver.FindElement(By.Id("passw")).SendKeys("test");
Driver.FindElement(By.Id("Button1")).Click();
Thread.Sleep(1000);
Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/umbraco.aspx#developer");
Thread.Sleep(2000);
var builder = new Actions(Driver);
var packagesNode = Driver.FindElement(By.XPath("//*[@id='init'][3]"));
builder.MoveToElement(packagesNode).DoubleClick().Build().Perform();
Thread.Sleep(1000);
var installPackageNode = Driver.FindElement(By.XPath("/html/body/div[2]/div/div/div[2]/div/div/div/div/ul/li/ul/li[3]/ul/li[4]/a/div"));
builder.MoveToElement(installPackageNode).Click().Build().Perform();
Thread.Sleep(1000);
var rightFrame = Driver.FindElement(By.XPath("//*[@id='right']"));
Driver.SwitchTo().Frame(rightFrame);
const string packagesDir = @"C:\\Downloads\\Packages\\";
var file = new DirectoryInfo(packagesDir).GetFiles().First(f => f.Name.ToLowerInvariant().StartsWith("UmbracoContour".ToLowerInvariant()));
Driver.FindElement(By.Id("cb")).Click();
Driver.FindElement(By.XPath("//input[@type='file']")).SendKeys(file.FullName);
Driver.FindElement(By.Id("body_ButtonLoadPackage")).Click();
Driver.FindElement(By.Id("body_acceptCheckbox")).Click();
Driver.FindElement(By.Id("body_ButtonInstall")).Click();
Thread.Sleep(1000);
var successPanel = Driver.FindElement(By.XPath("//*[@id='body_Panel1_content']"));
Assert.IsNotNull(successPanel);
}
//[Test]
//public void Install_CMS_Import_Package()
//{
// Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/login.aspx?redir=");
// Driver.FindElement(By.Id("lname")).Clear();
// Driver.FindElement(By.Id("lname")).SendKeys("admin");
// Driver.FindElement(By.Id("passw")).Clear();
// Driver.FindElement(By.Id("passw")).SendKeys("test");
// Driver.FindElement(By.Id("Button1")).Click();
// Thread.Sleep(1000);
// Driver.Navigate().GoToUrl(BaseUrl + "/umbraco/umbraco.aspx#developer");
// Thread.Sleep(2000);
// var builder = new Actions(Driver);
// var packagesNode = Driver.FindElement(By.XPath("//*[@id='init'][3]"));
// builder.MoveToElement(packagesNode).DoubleClick().Build().Perform();
// Thread.Sleep(1000);
// var installPackageNode = Driver.FindElement(By.XPath("/html/body/div[2]/div/div/div[2]/div/div/div/div/ul/li/ul/li[3]/ul/li[4]/a/div"));
// builder.MoveToElement(installPackageNode).Click().Build().Perform();
// Thread.Sleep(1000);
// var rightFrame = Driver.FindElement(By.XPath("//*[@id='right']"));
// Driver.SwitchTo().Frame(rightFrame);
// Driver.FindElement(By.Id("cb")).Click();
// Driver.FindElement(By.Id("body_file1")).SendKeys("C:\\Downloads\\Packages\\CMSImport-2.3.1.zip");
// Driver.FindElement(By.Id("body_ButtonLoadPackage")).Click();
// Driver.FindElement(By.Id("body_acceptCheckbox")).Click();
// Driver.FindElement(By.Id("body_ButtonInstall")).Click();
// Thread.Sleep(1000);
// var successPanel = Driver.FindElement(By.XPath("//*[@id='body_Panel1_content']"));
// Assert.IsNotNull(successPanel);
//}
}
}