mattercontrol/Tests/MatterControl.AutomationTests/PrintingTests.cs
Lars Brubaker 515966b0f0 Created a new printer turns of temps test
Fixed the test to pass
Made emulator turn off bed temp correctly.
2017-01-03 10:45:16 -08:00

57 lines
1.7 KiB
C#

using System;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using MatterHackers.Agg.PlatformAbstract;
using MatterHackers.Agg.UI;
using MatterHackers.Agg.UI.Tests;
using MatterHackers.GuiAutomation;
using MatterHackers.MatterControl.PrinterCommunication;
using MatterHackers.MatterControl.SlicerConfiguration;
using NUnit.Framework;
namespace MatterHackers.MatterControl.Tests.Automation
{
[TestFixture, Category("MatterControl.UI.Automation"), RunInApplicationDomain]
public class PrintingTests
{
[Test, Apartment(ApartmentState.STA)]
public async Task CompletingPrintTurnsoffHeat()
{
AutomationTest testToRun = (testRunner) =>
{
testRunner.WaitForName("Cancel Wizard Button", 1);
using (var emulatorProcess = testRunner.LaunchAndConnectToPrinterEmulator())
{
Assert.IsTrue(ProfileManager.Instance.ActiveProfile != null);
MatterControlUtilities.SwitchToAdvancedSettings(testRunner);
testRunner.ClickByName("Printer Tab", 1);
testRunner.ClickByName("Custom G-Code Tab", 1);
testRunner.ClickByName("end_gcode Edit Field");
testRunner.Type("^a");
testRunner.Type("{BACKSPACE}");
testRunner.Type("G28");
testRunner.ClickByName("Start Print Button", 1);
testRunner.WaitForName("Done Button", 30);
testRunner.WaitForName("Print Again Button", 1);
testRunner.Wait(5);
Assert.Less(PrinterConnectionAndCommunication.Instance.GetActualExtruderTemperature(0), 30);
Assert.Less(PrinterConnectionAndCommunication.Instance.ActualBedTemperature, 10);
return Task.FromResult(0);
}
};
await MatterControlUtilities.RunTest(testToRun, maxTimeToRun: 90);
}
}
}