public ScriptRootData() { Console = new ConsoleMock(this); CsRoot = new CsScriptFunctions(this); _e = new Lazy <IEntityData>(() => new EntityData(playfield, entity)); }
public void ListTypesOfVehicles_13Vehicles_OutputIsMatching() { // Arrange Console = new ConsoleMock(); GarageHandler = new GarageHandler(); UIConsoleHandler consoleHandlerUi = new UIConsoleHandler(Console, GarageHandler); GarageHandler.CreateGarage(numberOfVehicles: 13); ParkVehicles(VehicleTestData.Vehicles); // Act consoleHandlerUi.UserListTypesOfVehicles(); // Assert var expected = new List <string>() { "\nGarage Vehicle Types:", "Typ:Car Count:3", "Typ:AirPlane Count:3", "Typ:MotorCycle Count:3", "Typ:Bus Count:2", "Typ:Boat Count:2" }; CollectionAssert.AreEquivalent(expected, Console.ConsoleOutputRows); }
public void Setup() { _consoleMock = new ConsoleMock(); _userRepositoryMock = new UserRepositoryMock(); _followCommandHandler = new FollowCommandHandler(_consoleMock.Object, _userRepositoryMock.Object); }
public void Setup() { _consoleMock = new ConsoleMock(); _userRepositoryMock = new UserRepositoryMock(); _timelineCommandHandler = new TimelineCommandHandler(_consoleMock.Object, _userRepositoryMock.Object); }
public void Setup() { _consoleMock = new ConsoleMock(); _userRepositoryMock = new UserRepositoryMock(); _mainCommandHandlerChain = new MainCommandHandlerChain(_consoleMock.Object, new[] { new CommandHandlerMock(true).Object }); }
public void Setup() { _consoleMock = new ConsoleMock(); _userRepositoryMock = new UserRepositoryMock(); _messageRepositoryMock = new MessageRepositoryMock(); _postCommandHandler = new PostCommandHandler(_consoleMock.Object, _userRepositoryMock.Object, _messageRepositoryMock.Object); }
public void ProgramOutputShouldNotBeEmpty() { using var console = new ConsoleMock(); ReflectionHelper.ExecuteMain(subjectType); string output = console.ReadOutput().Trim(); Assert.Greater(output.Length, 0, "Программа не должна иметь пустой вывод"); }
public async Task TestInvoke() { var input = new MockEntity(1, "a"); ConsoleMock.Setup(x => x.Read <MockEntity>()).Returns(input); EndpointMock.Setup(x => x.InvokeAsync(input, default)).Returns(Task.CompletedTask); await ExecuteAsync(); }
public void NugetifyThrowsNoErrorsWhenNoPackagesFound() { var console = new ConsoleMock(); var nugetify = GetNugetifyCommand(console, _solutionFile, _packageSource); nugetify.ExecuteCommand(); console.AssertConsoleHasNoErrorsOrWarnings(); }
public void NugetifyThrowsErrorsWhenSolutionNotFound() { var console = new ConsoleMock(); var nugetify = GetNugetifyCommand(console, "non-existent-solution.sln", _packageSource); nugetify.ExecuteCommand(); console.AssertConsoleHasErrors(); }
private CommandExecuter CreateSut() { vehicleManager = new vehicleManagerMock(); console = new ConsoleMock(); vehicleParser = null; garageManager = new GarageManagerMock(); garageParser = new GarageParserMock(); csvImporter = null; file = null; return(new CommandExecuter(vehicleManager, console, vehicleParser, garageManager, garageParser, csvImporter, file)); }
public static ProjectNugetifier BuildNugetifier(IFileSystem projectFileSystem = null, Mock <IVsProject> vsProject = null, IPackageRepository packageRepository = null) { var console = new ConsoleMock(); var solutionRoot = GetMockDirectory(); projectFileSystem = projectFileSystem ?? GetMockFileSystem(solutionRoot); vsProject = vsProject ?? new Mock <IVsProject>(); vsProject.SetupGet(p => p.ProjectDirectory).Returns(new DirectoryInfo(projectFileSystem.Root)); packageRepository = packageRepository ?? new MockPackageRepository(); return(new ProjectNugetifier(vsProject.Object, packageRepository, projectFileSystem, console.Object, new HintPathGenerator())); }
public async Task TestInvoke() { var input = new MockEntity(1, "a"); var output = new MockEntity(2, "b"); ConsoleMock.Setup(x => x.Read <MockEntity>()).Returns(input); EndpointMock.Setup(x => x.InvokeAsync(input, default)).ReturnsAsync(output); ConsoleMock.Setup(x => x.Write(output)); await ExecuteAsync(); }
public void AverageWordsLengthTest(TestData <string> testData) { InputPlanner planner = new InputPlanner(); using var console = new ConsoleMock(); planner.ScheduleLines(testData.Input); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string actual = console.ReadOutputLines().Last(); Assert.AreEqual(testData.Expected, actual, testData.GetErrorMessage(actual)); }
public void Solve_WhenCalledWithInvalidExpression_ShouldWriteError(string expression, string errorMessage) { //Arrange SetupSolver(); //Act TestedSolver.Solve(new[] { expression }); //Assert ConsoleMock .Verify(c => c.WriteLine(It.Is <string>( s => s.Contains(errorMessage)))); }
public void Solve_WhenExpressionHasAllSolutions_ShouldWriteProperSolution(string expr) { //Arrange SetupSolver(); //Act TestedSolver.Solve(new[] { expr }); //Assert ConsoleMock .Verify(c => c.WriteLine(It.Is <string>( s => s.Contains("All real numbers")))); }
public void PrintArrayTest() { using ConsoleMock consoleMock = new ConsoleMock(); int[] array = { -4, 6, 0, -10, 45, 2, -7 }; ReflectionHelper.ExecuteStaticMethod(subjectType, "PrintArray", array); var output = consoleMock.ReadOutputLines(); Assert.AreEqual(array.Length, output.Length, $"Число строк в выводе: ожидалось - {array.Length}, было - {output.Length}"); for (int i = 0; i < array.Length; i++) { Assert.AreEqual(array[i].ToString(), output[i], $"Вывод элемента массива: ожидалось - {array[i]}, было {output[i]}"); } }
private static Nugetify GetNugetifyCommand(ConsoleMock console, string solutionFile, DirectoryInfo packageSource) { var repositoryFactory = new Mock <IPackageRepositoryFactory>(); var packageSourceProvider = new Mock <IPackageSourceProvider>(); var nugetify = new NugetifyCommandRunner(repositoryFactory.Object, packageSourceProvider.Object) { Console = console.Object, MsBuildProperties = "Configuration=Releasable,SomeOtherParameter=false", NuSpec = true, }; nugetify.Arguments.AddRange(new[] { solutionFile, packageSource.FullName }); return(nugetify); }
public void ProgramShouldHaveCorrectOutput(TestData <string> testData) { InputPlanner inputPlanner = new InputPlanner(); inputPlanner.ScheduleRead(testData.Input[0].ToCharArray()); using var console = new ConsoleMock(); console.Schedule(inputPlanner); ReflectionHelper.ExecuteMain(subjectType); string[] output = console.ReadOutputLines(); string actual = output.Last(); Assert.AreEqual(testData.Expected, actual, testData.GetErrorMessage(actual)); }
public void SpruceShouldBeInOutput(int count) { InputPlanner planner = new InputPlanner(); planner.ScheduleLine(count.ToString()); using ConsoleMock console = new ConsoleMock(); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string[] consoleOutput = console.ReadOutputLines(); int spruceFirstLine = consoleOutput .IndexOf(line => line.Count(ch => ch.Equals('*')) == 1); Assert.AreNotEqual(spruceFirstLine, -1, $"Вершина пирамидки не найдена"); string[] spruceActual = consoleOutput[spruceFirstLine..];
public void SpruceShouldBeInOutput(int count) { InputPlanner planner = new InputPlanner(); planner.ScheduleLine(count.ToString()); using ConsoleMock console = new ConsoleMock(); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string[] consoleOutput = console.ReadOutputLines(); int spruceFirstLine = Array.IndexOf(consoleOutput, "*"); Assert.AreNotEqual(spruceFirstLine, -1, "Вершина треугольника не найдена"); string[] spruceActual = consoleOutput[spruceFirstLine..];
public void AssemblyNameReplacesNullDescription() { var console = new ConsoleMock(); const string anyAssemblyName = "any.assembly.name"; var nullDataSource = new Mock <INuspecDataSource>().Object; var nuspecBuilder = new NuspecBuilder(anyAssemblyName); nuspecBuilder.SetMetadata(nullDataSource, new List <ManifestDependency>()); nuspecBuilder.Save(console.Object); var nuspecContents = File.ReadAllText(nuspecBuilder.FilePath); Assert.That(nuspecContents, Contains.Substring("<description>" + anyAssemblyName + "</description>")); console.AssertConsoleHasNoErrorsOrWarnings(); }
public void FindVehicleByLicense_NoneExistingLicenseNumber_ResultIsFalse() { // Arrange Console = new ConsoleMock(); GarageHandler = new GarageHandler(/*Console*/); GarageHandler.CreateGarage(numberOfVehicles: 13); ParkVehicles(VehicleTestData.Vehicles); // Act var nonExistingLicense = "bad license number"; var vehicle = GarageHandler.FindVehicleByLicense(nonExistingLicense); // Assert Assert.IsNull(vehicle); }
public void Solve_WhenExpressionHasSingleRationalSolutionAndDegreeOne_ShouldWriteProperSolution(string expr, string x) { //Arrange SetupSolver(); //Act TestedSolver.Solve(new[] { expr }); //Assert ConsoleMock .Verify(c => c.WriteLine(It.Is <string>( s => s.Contains("Degree: 1")))); ConsoleMock .Verify(c => c.WriteLine(It.Is <string>( s => s.Contains($" = {x}")))); }
public void Setup() { _console = new ConsoleMock(); _gameProps = new GameProps { Width = 15, Height = 4, MyId = 0 }; _console.Record(".............xx"); _console.Record(".............xx"); _console.Record("......xx......."); _console.Record("......xx......."); var mapScanner = new MapScanner(_gameProps, _console); var headPositionReducer = new HeadPositionReducer(_gameProps, mapScanner); _sut = new EnemyTracker(_gameProps, mapScanner.GetMapOrScan(), _console, headPositionReducer); }
public void TryUnparkVehicle_Result_IsTrue() { // Arrange Console = new ConsoleMock(); GarageHandler = new GarageHandler(/*Console*/); GarageHandler.CreateGarage(numberOfVehicles: 13); ParkVehicles(VehicleTestData.Vehicles); // Act var result = GarageHandler.TryUnparkVehicle(VehicleTestData.Car2); // Assert var expected = true; Assert.AreEqual(expected, result); }
public void LooseGame() { // Arrange var secret = new int[] { 3, 2, 3, 0 }; const string secretText = "3 2 3 0"; var console = new ConsoleMock("1234" + "7654" + "2345" + "5241" + "2634" + "5273" + "5132" + "6352" + "4172" + "6352"); var consolePlayer = new ConsolePlayer(console); var game = new Game(8, 4, 10, secret); // Act var result = game.Play(consolePlayer); // Assert Assert.False(result.WasTheSecretGuessed); Assert.DoesNotContain(WinText, console.Output); Assert.Contains(LoseText, console.Output); Assert.Contains(secretText, console.Output); }
public void ProgramShouldHaveCorrectOutput(object dummy) { using var console = new ConsoleMock(); ReflectionHelper.ExecuteMain(subjectType); string expectedOutput = $"String: [number]{Environment.NewLine}StringBuilder: [number]"; string[] lines = console.ReadOutputLines(); Assert.Greater(lines.Length, 1, $"Ожидаемый вывод:{Environment.NewLine}{expectedOutput}"); Assert.IsTrue(lines[0].StartsWith("String: "), $"Ожидаемый вывод:{Environment.NewLine}{expectedOutput}"); Assert.IsTrue(lines[1].StartsWith("StringBuilder: "), $"Ожидаемый вывод:{Environment.NewLine}{expectedOutput}"); double stringDuration = double.Parse(lines[0].Split(' ', StringSplitOptions.RemoveEmptyEntries).Last()); double stringBuilderDuration = double.Parse(lines[1].Split(' ', StringSplitOptions.RemoveEmptyEntries).Last()); Assert.Greater(stringDuration, stringBuilderDuration, "Конкатенация строки не может быть эффективнее класса StringBuilder"); }
public void IgnoreKeysThatDoesNotMapToPegs() { // Arrange const string Input = "\t192d3\r4 5"; var expectedPegNumbers = new int[] { 1, 2, 3, 4, 5 }; var console = new ConsoleMock(Input); var consolePlayer = new ConsolePlayer(console); // Act consolePlayer.BeginGame(8, 5, 10); var guess = consolePlayer.GetGuess(); consolePlayer.ResultFromPreviousGuess(5, 0); consolePlayer.EndGame(true, 1, guess); // Assert Assert.Equal(expectedPegNumbers, guess); }
public void TargetFrameworkAppearsVerbatimInOutput(string targetFramework) { var console = new ConsoleMock(); var nuspecBuilder = new NuspecBuilder("anyAssemblyName"); var anyDependencies = new List <ManifestDependency> { new ManifestDependency { Id = "anyDependency", Version = "0.0.0.0" } }; nuspecBuilder.SetDependencies(anyDependencies, targetFramework); nuspecBuilder.Save(console.Object); var nuspecContents = File.ReadAllText(nuspecBuilder.FilePath); var expectedAssemblyGroupStartTag = string.Format("<group targetFramework=\"{0}\">", targetFramework); Assert.That(nuspecContents, Contains.Substring(expectedAssemblyGroupStartTag)); console.AssertConsoleHasNoErrorsOrWarnings(); }
public void ReadCommandTest_FindCarsByLicensePlateWasCalled() { bool isCalled = false; var consoleMock = new ConsoleMock("select 1;", null, null); var vehicleManagerMock = new vehicleManagerMock((s) => { if (s == "1") { isCalled = true; } }); vehicleManagerMock.FindCarsByLicensePlateReturn = new Dictionary <Vehicle, ParkingPlaceOutput>(); var factory = new CommandExecuterFactory(vehicleManagerMock, consoleMock, null, null, null, null, null); var sut = new CommandLineParser(consoleMock, CommandDictionaryFactory.Create(), vehicleManagerMock, factory); sut.ReadCommand(); Assert.IsTrue(isCalled); }
public void ListVehicles_13Vehicles_OutputIsMatching() { // Arrange Console = new ConsoleMock(); GarageHandler = new GarageHandler(); UIConsoleHandler consoleHandlerUi = new UIConsoleHandler(Console, GarageHandler); GarageHandler.CreateGarage(numberOfVehicles: 13); ParkVehicles(VehicleTestData.Vehicles); // Act consoleHandlerUi.UserListVehicles(); // Assert var expected = new List <string>() { "\nGarage Vehicles:", " Car LicenseNumber: 0001 Color: Yellow NumberOfWheels: 4 NumberOfCarSeats: 4", " AirPlane LicenseNumber: 0002 Color: Yellow NumberOfWheels: 2 NumberOfAirPlaneWings: 2", " MotorCycle LicenseNumber: 0003 Color: Red NumberOfWheels: 2 MotorCycleTopSpeed: 250", " Bus LicenseNumber: 0004 Color: Red NumberOfWheels: 8 BusMaxNumberOfStandingPassengers: 55", " Boat LicenseNumber: 0005 Color: Blue NumberOfWheels: 0 NumberOfBoatSails: 4", " Car LicenseNumber: 0006 Color: Yellow NumberOfWheels: 4 NumberOfCarSeats: 2", " AirPlane LicenseNumber: 0007 Color: Blue NumberOfWheels: 2 NumberOfAirPlaneWings: 2", " MotorCycle LicenseNumber: 0008 Color: Red NumberOfWheels: 2 MotorCycleTopSpeed: 100", " Bus LicenseNumber: 0009 Color: Black NumberOfWheels: 8 BusMaxNumberOfStandingPassengers: 6", " Boat LicenseNumber: 0010 Color: Blue NumberOfWheels: 0 NumberOfBoatSails: 2", " Car LicenseNumber: 0011 Color: Green NumberOfWheels: 4 NumberOfCarSeats: 4", " AirPlane LicenseNumber: 0012 Color: Green NumberOfWheels: 2 NumberOfAirPlaneWings: 4", " MotorCycle LicenseNumber: 0013 Color: Green NumberOfWheels: 2 MotorCycleTopSpeed: 100", "" }; CollectionAssert.AreEquivalent(expected, Console.ConsoleOutputRows); }
public void WinGame() { // Arrange var secret = new int[] { 1, 1, 2, 2 }; const string Input = "1234" + "5670" + "1122"; const string ResultText1 = "Correct: 1 | Wrong position: 1"; const string ResultText2 = "Correct: 0 | Wrong position: 0"; const string ResultText3 = "Correct: 4 | Wrong position: 0"; var console = new ConsoleMock(Input); var consolePlayer = new ConsolePlayer(console); var game = new Game(8, 4, 10, secret); // Act var result = game.Play(consolePlayer); // Assert Assert.True(result.WasTheSecretGuessed); Assert.Contains(WinText, console.Output); Assert.DoesNotContain(LoseText, console.Output); Assert.Contains(ResultText1, console.Output); Assert.Contains(ResultText2, console.Output); Assert.Contains(ResultText3, console.Output); }
private void VerifyOutput(string expected) { ConsoleMock.Verify(x => x.WriteLine(StringCalculator.OutputPrefix + expected)); }