C# OOP Exam - 12 Apr 2020 - UnitTest
Здравейте на Unit Tests от изпит https://judge.softuni.bg/Contests/Practice/Index/2298#2, judge ми дава 90/100. Моля за помощ към решението ми https://easyupload.io/699sxf . Благодаря предварително!
Здравейте на Unit Tests от изпит https://judge.softuni.bg/Contests/Practice/Index/2298#2, judge ми дава 90/100. Моля за помощ към решението ми https://easyupload.io/699sxf . Благодаря предварително!
Иска парола за да го сваля..пусни си само тестовете в pastebin
Мисля, че сега не би трябвало да иска парола https://easyupload.io/b19krs, https://pastebin.com/LraBedHn.
Теста, който не ти излизаше е този :
[Test]
public void ThrowsExceptionWhenCurrentBatteryUsageIsLessThanExpected()
{
var robotManager = new RobotManager(10);
var robot = new Robot("Test", 10);
robotManager.Add(robot);
Assert.Throws<InvalidOperationException>(() => robotManager.Work("Test", "manager", 1000));
}
Също така като идея бих те посъветвал да използваш метода SetUp() в началото на кода за да ти създава инстанции на обектите автоматично, вместо сам да ги създаваш за всеки отделен тест..това ще ти спести и време...пускам началото на твоят код леко преправен, за да видиш как би изглеждал по този начин
[TestFixture]
public class RobotsTests
{
private Robot robot;
private RobotManager robotManager;
[SetUp]
public void SetUp()
{
this.robotManager = new RobotManager(2);
this.robot = new Robot("TestName", 10);
}
[Test]
public void ConstructorShouldInitializeCorrectlyAllProperties()
{
int expectedCapacity = 2;
int actualCapacity = this.robotManager.Capacity;
Assert.AreEqual(expectedCapacity, actualCapacity);
}
[Test]
public void CapacityShouldThrowExceptionIfIsNull()
{
Assert.Throws<ArgumentException>(() =>
new RobotManager(-1));
}
[Test]
public void AddRobotShouldThrowExceptionWhenCollectionContainsSameRobot()
{
this.robotManager.Add(this.robot);
Assert.Throws<InvalidOperationException>(()
=> robotManager.Add(this.robot));
}
[Test]
public void AddRobotShouldThrowExceptionWhenCapacityIsInvalid()
{
this.robotManager.Add(this.robot);
this.robotManager.Add(new Robot("pesho", 10));
Assert.Throws<InvalidOperationException>(()
=> robotManager.Add(new Robot("gosho", 10)));
}
...........
Благодаря много!