public void SetCurrentKataAttempt(IKataAttempt currentKataAttempt) { if (_currentKataAttempt == currentKataAttempt) { return; } _currentKataAttempt = currentKataAttempt; UpdateCurrentKataAttemptSettings(currentKataAttempt); AttemptGameState = new AttemptGameState(new List <Result>(), new KataHelper()); AttemptGameState.KataName = currentKataAttempt.Config.KataName; }
private string GetInstruction(IKataAttempt kataAttempt) { var instructions = kataAttempt.Config.Instructions; if (instructions == null) { return(string.Empty); } var content = string.Join(Environment.NewLine, instructions.Content); return(instructions.Header + Environment.NewLine + content); }
private Action GenerateReturnAction(IKataAttempt kataAttempt) { Action result = () => { var attemptConfig = kataAttempt.Config; if (string.IsNullOrEmpty(attemptConfig.PlayerDll)) { _eventAggregator.Publish <DisplayFeedbackEvent>("Error Reading Configuration For Kata Package"); } SetKataAndPlayPaths(attemptConfig.PlayerDllPath, attemptConfig.MasterDllPath); LaunchSolution(attemptConfig.SolutionFilePath); }; return(result); }
private void UpdateCurrentKataAttemptSettings(IKataAttempt currentKataAttempt) { var settings = SettingsManager.FetchCurrentSettings(); settings.KataHash = string.Empty; settings.PlayerHash = string.Empty; if (currentKataAttempt != null) { settings.KataPath = currentKataAttempt.Config.MasterDllPath; settings.PlayerPath = currentKataAttempt.Config.PlayerDllPath; } else { settings.KataPath = null; settings.PlayerPath = null; } if (!SettingsManager.PersistSettings(settings)) { RaiseErrorNotification("Your Assembly Paths Were Not Saved"); } }
public KataAttemptEventArgs(IKataAttempt kataAttempt) { KataAttempt = kataAttempt; }
public string GetPlayerSolutionAssemblyPath(IKataAttempt kataAttempt) { return(kataAttempt.Config.PlayerDllPath); }
public KataAttemptCreatedEvent(IKataAttempt kataAttempt) { KataAttempt = kataAttempt; }