public static void GetUnsetValuesFrom(this IGoogleTestAdapterSettings self, IGoogleTestAdapterSettings other) { self.AdditionalTestExecutionParam = self.AdditionalTestExecutionParam ?? other.AdditionalTestExecutionParam; self.CatchExceptions = self.CatchExceptions ?? other.CatchExceptions; self.BreakOnFailure = self.BreakOnFailure ?? other.BreakOnFailure; self.MaxNrOfThreads = self.MaxNrOfThreads ?? other.MaxNrOfThreads; self.NrOfTestRepetitions = self.NrOfTestRepetitions ?? other.NrOfTestRepetitions; self.ParallelTestExecution = self.ParallelTestExecution ?? other.ParallelTestExecution; self.PrintTestOutput = self.PrintTestOutput ?? other.PrintTestOutput; self.RunDisabledTests = self.RunDisabledTests ?? other.RunDisabledTests; self.ShuffleTests = self.ShuffleTests ?? other.ShuffleTests; self.ShuffleTestsSeed = self.ShuffleTestsSeed ?? other.ShuffleTestsSeed; self.TestDiscoveryRegex = self.TestDiscoveryRegex ?? other.TestDiscoveryRegex; self.AdditionalPdbs = self.AdditionalPdbs ?? other.AdditionalPdbs; self.TestDiscoveryTimeoutInSeconds = self.TestDiscoveryTimeoutInSeconds ?? other.TestDiscoveryTimeoutInSeconds; self.WorkingDir = self.WorkingDir ?? other.WorkingDir; self.PathExtension = self.PathExtension ?? other.PathExtension; self.BatchForTestSetup = self.BatchForTestSetup ?? other.BatchForTestSetup; self.BatchForTestTeardown = self.BatchForTestTeardown ?? other.BatchForTestTeardown; self.TraitsRegexesAfter = self.TraitsRegexesAfter ?? other.TraitsRegexesAfter; self.TraitsRegexesBefore = self.TraitsRegexesBefore ?? other.TraitsRegexesBefore; self.TestNameSeparator = self.TestNameSeparator ?? other.TestNameSeparator; self.ParseSymbolInformation = self.ParseSymbolInformation ?? other.ParseSymbolInformation; self.DebugMode = self.DebugMode ?? other.DebugMode; self.TimestampOutput = self.TimestampOutput ?? other.TimestampOutput; self.ShowReleaseNotes = self.ShowReleaseNotes ?? other.ShowReleaseNotes; self.KillProcessesOnCancel = self.KillProcessesOnCancel ?? other.KillProcessesOnCancel; self.SkipOriginCheck = self.SkipOriginCheck ?? other.SkipOriginCheck; self.UseNewTestExecutionFramework = self.UseNewTestExecutionFramework ?? other.UseNewTestExecutionFramework; self.DebuggingNamedPipeId = self.DebuggingNamedPipeId ?? other.DebuggingNamedPipeId; self.SolutionDir = self.SolutionDir ?? other.SolutionDir; }
public SettingsWrapper(IGoogleTestAdapterSettingsContainer settingsContainer, string solutionDir = null) { _settingsContainer = settingsContainer; _solutionDir = solutionDir; _currentSettings = _settingsContainer.SolutionSettings; _settingsPrinter = new SettingsPrinter(this); }
public static void GetUnsetValuesFrom(this IGoogleTestAdapterSettings self, IGoogleTestAdapterSettings other) { self.AdditionalTestExecutionParam = self.AdditionalTestExecutionParam ?? other.AdditionalTestExecutionParam; self.CatchExceptions = self.CatchExceptions ?? other.CatchExceptions; self.BreakOnFailure = self.BreakOnFailure ?? other.BreakOnFailure; self.MaxNrOfThreads = self.MaxNrOfThreads ?? other.MaxNrOfThreads; self.NrOfTestRepetitions = self.NrOfTestRepetitions ?? other.NrOfTestRepetitions; self.ParallelTestExecution = self.ParallelTestExecution ?? other.ParallelTestExecution; self.PrintTestOutput = self.PrintTestOutput ?? other.PrintTestOutput; self.RunDisabledTests = self.RunDisabledTests ?? other.RunDisabledTests; self.ShuffleTests = self.ShuffleTests ?? other.ShuffleTests; self.ShuffleTestsSeed = self.ShuffleTestsSeed ?? other.ShuffleTestsSeed; self.TestDiscoveryRegex = self.TestDiscoveryRegex ?? other.TestDiscoveryRegex; self.WorkingDir = self.WorkingDir ?? other.WorkingDir; self.PathExtension = self.PathExtension ?? other.PathExtension; self.BatchForTestSetup = self.BatchForTestSetup ?? other.BatchForTestSetup; self.BatchForTestTeardown = self.BatchForTestTeardown ?? other.BatchForTestTeardown; self.TraitsRegexesAfter = self.TraitsRegexesAfter ?? other.TraitsRegexesAfter; self.TraitsRegexesBefore = self.TraitsRegexesBefore ?? other.TraitsRegexesBefore; self.TestNameSeparator = self.TestNameSeparator ?? other.TestNameSeparator; self.ParseSymbolInformation = self.ParseSymbolInformation ?? other.ParseSymbolInformation; self.DebugMode = self.DebugMode ?? other.DebugMode; self.TimestampOutput = self.TimestampOutput ?? other.TimestampOutput; self.ShowReleaseNotes = self.ShowReleaseNotes ?? other.ShowReleaseNotes; }
public void ExecuteWithSettingsForExecutable(string executable, Action action, ILogger logger) { lock (_lock) { CheckCorrectUsage(executable); _nrOfRunningExecutions++; if (_nrOfRunningExecutions == 1) { _currentExecutable = executable; _currentThread = Thread.CurrentThread; var projectSettings = _settingsContainer.GetSettingsForExecutable(executable); if (projectSettings != null) { _currentSettings = projectSettings; string settingsString = ToString(); _currentSettings = _settingsContainer.SolutionSettings; logger.DebugInfo(String.Format(Resources.SettingsMessage, executable, settingsString)); _currentSettings = projectSettings; } else { logger.DebugInfo(String.Format(Resources.NoSettingConfigured, executable, this)); } } } try { action.Invoke(); } finally { lock (_lock) { _nrOfRunningExecutions--; if (_nrOfRunningExecutions == 0) { _currentExecutable = null; _currentThread = null; if (_currentSettings != _settingsContainer.SolutionSettings) { _currentSettings = _settingsContainer.SolutionSettings; logger.DebugInfo(String.Format(Resources.RestoringSolutionSettings, this)); } } } } }
public void ExecuteWithSettingsForExecutable(string executable, Action action, ILogger logger) { lock (_lock) { CheckCorrectUsage(executable); _nrOfRunningExecutions++; if (_nrOfRunningExecutions == 1) { _currentExecutable = executable; _currentThread = Thread.CurrentThread; var projectSettings = _settingsContainer.GetSettingsForExecutable(executable); if (projectSettings != null) { _currentSettings = projectSettings; string settingsString = ToString(); _currentSettings = _settingsContainer.SolutionSettings; logger.DebugInfo($"Settings for test executable '{executable}': {settingsString}"); _currentSettings = projectSettings; } else { logger.DebugInfo($"No settings configured for test executable '{executable}'; running with solution settings: {this}"); } } } try { action.Invoke(); } finally { lock (_lock) { _nrOfRunningExecutions--; if (_nrOfRunningExecutions == 0) { _currentExecutable = null; _currentThread = null; if (_currentSettings != _settingsContainer.SolutionSettings) { _currentSettings = _settingsContainer.SolutionSettings; logger.DebugInfo($"Back to solution settings: {this}"); } } } } }
public void ExecuteWithSettingsForExecutable(string executable, Action action, ILogger logger) { var formerSettings = _currentSettings; try { _currentSettings = _settingsContainer.GetSettingsForExecutable(executable); logger.DebugInfo($"Settings for test executable '{executable}': {this}"); action.Invoke(); } finally { _currentSettings = formerSettings; logger.DebugInfo($"Back to solution settings: {this}"); } }
public SettingsWrapper(IGoogleTestAdapterSettingsContainer settingsContainer) { _settingsContainer = settingsContainer; _currentSettings = _settingsContainer.SolutionSettings; }
public SettingsWrapper(IGoogleTestAdapterSettings settings) { _theSettings = settings; }