public BooksController(IBooksRepository booksRepository, ILoggers loggers, IUserRepository userRepository, IImageRepository imageRepository) { this.booksRepository = booksRepository; this.loggers = loggers; this.userRepository = userRepository; this.imageRepository = imageRepository; }
public IoServerInterface(ILoggers logger, IIoServer ioServer, char endOfMessageChar = EndofMessageChar) { _logger = logger; _ioServer = ioServer; Initialise(); _timeoutPeriod = TimeSpan.FromSeconds(HeartbeatPeriod*2); _endOfMessage = endOfMessageChar; _timeoutTimer = new Timer(TimeoutTimerElapsed,null,0, (int)TimeSpan.FromSeconds(10).TotalMilliseconds); }
/// <summary> /// 有参构造函数 /// </summary> /// <param name="loggers"></param> /// <param name="connectionString">数据库连接字符串</param> /// <param name="dataBaseType">数据库类型</param> public DataAccess(ILoggers loggers, string connectionString, DataBaseTypeEnum dataBaseType) { _logger = loggers; if (string.IsNullOrEmpty(connectionString)) { _logger.Error(null, "创建数据库连接失败,错误信息:数据库连接字符串为空"); throw new ArgumentNullException("Connection String is null or empty"); } _connectionString = connectionString; _dataBaseType = dataBaseType; }
public IoClientInterface(ILoggers logger, ITcpClient tcpClient, char endOfMessageChar = EndofMessageChar) { _logger = logger; _tcpClient = tcpClient; Initialise(); _endOfMessage = endOfMessageChar; _heartbeatPeriod = TimeSpan.FromSeconds(HeartbeatPeriod); _heartbeatTimer = new Timer(HeartbeatTimerElapsed,null, 0, (int)_heartbeatPeriod.TotalMilliseconds); //_heartbeatTimer.Elapsed += HeartbeatTimerElapsed; //_heartbeatTimer.Interval = _heartbeatPeriod.TotalMilliseconds; //_heartbeatTimer.Start(); }
public void NoParameters() { ITaskRegistry registry = Substitute.For <ITaskRegistry>(); UnknownTask task = new UnknownTask(registry, "GeneralHelp"); ITaskInteraction interaction = Substitute.For <ITaskInteraction>(); ILoggers loggers = Substitute.For <ILoggers>(); interaction.Loggers.Returns(loggers); ILogger logger = Substitute.For <ILogger>(); loggers[LoggerType.Status].Returns(logger); task.Execute(interaction).Should().Be(ExitCode.InvalidArgument); logger.Received().WriteLine(WriteStyle.Error, XTaskStrings.ErrorNoParametersSpecified); }
public void UnknownTaskLogsHelp() { ITaskRegistry registry = Substitute.For <ITaskRegistry>(); UnknownTask task = new UnknownTask(registry, "GeneralHelp"); ITaskInteraction interaction = Substitute.For <ITaskInteraction>(); ILoggers loggers = Substitute.For <ILoggers>(); interaction.Loggers.Returns(loggers); ILogger logger = Substitute.For <ILogger>(); loggers[LoggerType.Result].Returns(logger); task.Execute(interaction).Should().Be(ExitCode.InvalidArgument); logger.Received().WriteLine(WriteStyle.Fixed, "GeneralHelp"); }
public void ListSettings_CountIsCorrect() { // Ensure we output the location table and all settings when listing settings // Set up loggers List <ITable> outputTables = new List <ITable>(); ILogger logger = Substitute.For <ILogger>(); logger.Write(Arg.Do <ITable>(x => outputTables.Add(x))); ILoggers loggers = Substitute.For <ILoggers>(); loggers[Arg.Any <LoggerType>()].Returns(logger); // Set up to list settings ITaskInteraction interaction = Substitute.For <ITaskInteraction>(); interaction.Loggers.Returns(loggers); IArgumentProvider argumentProvider = Substitute.For <IArgumentProvider, IClientSettings>(); argumentProvider.GetOption <SettingsLocation?>(StandardOptions.List).Returns(new Nullable <SettingsLocation>(SettingsLocation.Local)); interaction.Arguments.Returns(argumentProvider); // Prepare the configuration results ((IClientSettings)argumentProvider).GetConfigurationPath(SettingsLocation.Local).Returns("LocalPath"); ((IClientSettings)argumentProvider).GetConfigurationPath(SettingsLocation.Roaming).Returns("RoamingPath"); ((IClientSettings)argumentProvider).GetConfigurationPath(SettingsLocation.RunningExecutable).Returns("ExePath"); ClientSetting[] settings = { new ClientSetting("foo", "one", SettingsLocation.Local), new ClientSetting("bar", "two", SettingsLocation.Roaming) }; ((IClientSettings)argumentProvider).GetAllSettings().Returns(settings); DefaultsTask task = new DefaultsTask("Foo"); task.Execute(interaction).Should().Be(ExitCode.Success); outputTables.Count.Should().Be(2, "table for locations and table for settings"); outputTables[0].Rows.Skip(1).ForEachDoOne( row => row.Should().Contain(SettingsLocation.Local.ToString(), "LocalPath"), row => row.Should().Contain(SettingsLocation.Roaming.ToString(), "RoamingPath"), row => row.Should().Contain(SettingsLocation.RunningExecutable.ToString(), "ExePath")); outputTables[1].Rows.Skip(1).ForEachDoOne( row => row.Should().Contain("foo", SettingsLocation.Local.ToString(), "one"), row => row.Should().Contain("bar", SettingsLocation.Roaming.ToString(), "two")); }
public void UnkownCommand() { ITaskRegistry registry = Substitute.For <ITaskRegistry>(); UnknownTask task = new UnknownTask(registry, "GeneralHelp"); ITaskInteraction interaction = Substitute.For <ITaskInteraction>(); IArgumentProvider arguments = Substitute.For <IArgumentProvider>(); string commandName = "Foo"; interaction.Arguments.Returns(arguments); interaction.Arguments.Command.Returns(commandName); ILoggers loggers = Substitute.For <ILoggers>(); interaction.Loggers.Returns(loggers); ILogger logger = Substitute.For <ILogger>(); loggers[LoggerType.Status].Returns(logger); task.Execute(interaction).Should().Be(ExitCode.InvalidArgument); logger.Received().WriteLine(WriteStyle.Error, XTaskStrings.UnknownCommand, commandName); }
/// <summary> /// Note that I'm only injecting ILoggerConfiguration, and all the others are being looked up via Service Locator. /// This seemed like an easier pattern to use instead of having a large interface listing into constructor /// </summary> public Logger( ILoggerConfiguration config, ILoggers loggers, IServiceProvider provider, IAlert alert, LongRunningInformation longRunningInfo, HttpResponseInformation httpResponseInfo, IApplicationSettings app, IEmail email ) { Config = config; Loggers = loggers; Provider = provider; Alert = alert; LongRunningInfo = longRunningInfo; HttpResponseInfo = httpResponseInfo; App = app; EmailImpl = email; }
public ConfigController(IConfigRepository configRepository, ILoggers logger) { this.configRepository = configRepository; this.logger = logger; }
public UserController(IUserRepository userRepository, ILoggers loggers, IImageRepository imageRepository) { this.userRepository = userRepository; this.loggers = loggers; this.imageRepository = imageRepository; }
public RegistrationController(IUserRepository userRepository, ILoggers loggers, IPasswordRepository passwordRepository) { this.userRepository = userRepository; this.loggers = loggers; this.passwordRepository = passwordRepository; }
public ValuesController(ILoggers loggers) { _loggers = loggers; }