public void Multiplication_Success() { var service = new MultiplicationService(); var actualResult = service.Multiplication(5, 10); Assert.Equal(50, actualResult); }
public void ShouldDeployAContractWithConstructor() { using (var testrpcRunner = new TestRPCEmbeddedRunner()) { try { testrpcRunner.RedirectOuputToDebugWindow = true; testrpcRunner.StartTestRPC(); var web3 = new Web3(); var addressFrom = (web3.Eth.Accounts.SendRequestAsync()).Result[0]; // Deploy the contract and add the multiplier to the constructor var transactionHash = MultiplicationService.DeployContractAsync(web3, addressFrom, new HexBigInteger(900000), 4).Result; Assert.IsNotNull(transactionHash); var receipt = web3.Eth.Transactions.GetTransactionReceipt.SendRequestAsync(transactionHash).Result; var contract = new MultiplicationService(web3, receipt.ContractAddress); // Do a multiplication var callResult = contract.MultiplyAsyncCall(4).Result; Assert.AreEqual(16, callResult); } finally { testrpcRunner.StopTestRPC(); } } }
public void Multiplication_Theory(int param1, int param2, int expectedResult) { var service = new MultiplicationService(); var actualResult = service.Multiplication(param1, param2); Assert.Equal(expectedResult, actualResult); }
public void IsEven_ArithmeticException() { var service = new MultiplicationService(); Assert.Throws <ArithmeticException>(() => service.IsEven(1)); }
public void GenerateMultiplcationQuestionsTest() { var multiplicationService = new MultiplicationService(); var numberOfQuestions = 10; var generatedQuestions = multiplicationService.GenerateQuestions(numberOfQuestions); Assert.AreEqual(numberOfQuestions, generatedQuestions.Count); foreach (var question in generatedQuestions) { var result = question.FirstNumber * question.SecondNumber; Assert.IsTrue(result >= 0 && result <= 100); } }
public void ScoreMultiplcationQuestionsTest() { var multiplicationService = new MultiplicationService(); var generatedQuestions = Helper.GetQuestionSetForScoring();; multiplicationService.ScoreQuestions(generatedQuestions.Questions); //Split the questions after scoring into two lists //One is the multiplication questions which we can individually check to ensure they were scored properly var multiplicationQuestions = generatedQuestions.Questions.Where(a => a.QuestionType == QuestionType.Multiplication).ToList(); Assert.AreEqual(QuestionState.Correct, multiplicationQuestions[0].QuestionState); Assert.AreEqual(QuestionState.Incorrect, multiplicationQuestions[1].QuestionState); Assert.AreEqual(QuestionState.NotScored, multiplicationQuestions[2].QuestionState); //This list is everything that isn't a multplication question and so should not have been scored var otherQuestions = generatedQuestions.Questions.Where(a => a.QuestionType != QuestionType.Multiplication); Assert.IsTrue(otherQuestions.All(a => a.QuestionState == QuestionState.NotScored)); }
public void Setup() { randomSvc = new Mock <IRandomNumberService>(); multiplicationService = new MultiplicationService(randomSvc.Object); }
public void Setup() { _multiplicationService = new MultiplicationService(); }
static void Main(string[] args) { RandomNumberService randomNumberService; AdditionService additionService; MultiplicationService multiplicationService; #region No Dependency Injection randomNumberService = new RandomNumberService(); additionService = new AdditionService(); multiplicationService = new MultiplicationService(); #endregion #region All Initializations in 1 place //randomNumberService = new RandomNumberService(new ConsoleLogger()); //additionService = new AdditionService(new ConsoleLogger()); //multiplicationService = new MultiplicationService(new ConsoleLogger()); #endregion #region Dependency Injection Basics //var serviceCollection = new ServiceCollection(); //serviceCollection.AddSingleton<ConsoleLogger>(); //var serviceProvider = serviceCollection.BuildServiceProvider(); //randomNumberService = new RandomNumberService(serviceProvider.GetRequiredService<ConsoleLogger>()); //additionService = new AdditionService(serviceProvider.GetRequiredService<ConsoleLogger>()); //multiplicationService = new MultiplicationService(serviceProvider.GetRequiredService<ConsoleLogger>()); #endregion #region FileLogger //var serviceCollection = new ServiceCollection(); //serviceCollection.AddSingleton<ILogger, ConsoleLogger>(); ////serviceCollection.AddSingleton<ILogger>(new FileLogger("output.log")); //var serviceProvider = serviceCollection.BuildServiceProvider(); //randomNumberService = new RandomNumberService(serviceProvider.GetRequiredService<ILogger>()); //additionService = new AdditionService(serviceProvider.GetRequiredService<ILogger>()); //multiplicationService = new MultiplicationService(serviceProvider.GetRequiredService<ILogger>()); #endregion #region Resolving properly //var serviceCollection = new ServiceCollection(); //serviceCollection.AddSingleton<ILogger, ConsoleLogger>(); //serviceCollection.AddSingleton<RandomNumberService>(); //serviceCollection.AddSingleton<AdditionService>(); //serviceCollection.AddSingleton<MultiplicationService>(); //var serviceProvider = serviceCollection.BuildServiceProvider(); //randomNumberService = serviceProvider.GetRequiredService<RandomNumberService>(); //additionService = serviceProvider.GetRequiredService<AdditionService>(); //multiplicationService = serviceProvider.GetRequiredService<MultiplicationService>(); #endregion #region Lifetime management //var serviceCollection = new ServiceCollection(); //serviceCollection.AddTransient<ILogger, ConsoleLogger>(); //serviceCollection.AddSingleton<RandomNumberService>(); //serviceCollection.AddSingleton<AdditionService>(); //serviceCollection.AddSingleton<MultiplicationService>(); //var serviceProvider = serviceCollection.BuildServiceProvider(); //randomNumberService = serviceProvider.GetRequiredService<RandomNumberService>(); //additionService = serviceProvider.GetRequiredService<AdditionService>(); //multiplicationService = serviceProvider.GetRequiredService<MultiplicationService>(); #endregion #region Scrutor //var serviceCollection = new ServiceCollection(); //serviceCollection.AddSingleton<ILogger, ConsoleLogger>(); //serviceCollection.Scan(scan => scan // .FromAssemblyOf<Program>() // .AddClasses(classes => classes.AssignableTo<IService>()) // .AsSelf() // .WithSingletonLifetime()); //var serviceProvider = serviceCollection.BuildServiceProvider(); //randomNumberService = serviceProvider.GetRequiredService<RandomNumberService>(); //additionService = serviceProvider.GetRequiredService<AdditionService>(); //multiplicationService = serviceProvider.GetRequiredService<MultiplicationService>(); #endregion #region Castle Windsor //var serviceCollection = new ServiceCollection(); //serviceCollection.AddSingleton<ILogger, ConsoleLogger>(); //serviceCollection.Scan(scan => scan // .FromAssemblyOf<Program>() // .AddClasses(classes => classes.AssignableTo<IService>()) // .AsSelf() // .WithSingletonLifetime()); //var serviceProvider = WindsorRegistrationHelper.CreateServiceProvider(new WindsorContainer(), serviceCollection); //randomNumberService = serviceProvider.GetRequiredService<RandomNumberService>(); //additionService = serviceProvider.GetRequiredService<AdditionService>(); //multiplicationService = serviceProvider.GetRequiredService<MultiplicationService>(); #endregion var generatedNumbers = randomNumberService.Generate(10); var additionResult = additionService.Add(generatedNumbers); var multiplicationResult = multiplicationService.Multiply(generatedNumbers); Console.WriteLine($"Addition result: {additionResult}"); Console.WriteLine($"Multiplication result: {multiplicationResult}"); }