public void setUpMocks() { mocks = new MockRepository(); dialogWindowGenerator = (IDialogWindowsGenerator)mocks.StrictMock(typeof(IDialogWindowsGenerator)); storage = (IStorage)mocks.StrictMock(typeof(IStorage)); validationEnfoncer = (IValidationEnforcer)mocks.StrictMock(typeof(IValidationEnforcer)); }
public MainWindowViewModel(IStorage storage, IDialogWindowsGenerator dialogWindowsGenerator, IValidationEnforcer validationEnforcer) { try { this.storage = storage; this.dialogWindowsGenerator = dialogWindowsGenerator; this.validationEnforcer = validationEnforcer; this._Groups = storage.getGroups(); SelectedSearchGroup = Constants.EMPTY_GROUP; InputBirthDate = null; FilterButtonCommand = new RelayCommand(() => { doFilterAction(); }); ClearButtonCommand = new RelayCommand( () => { SelectedSearchCities = ""; SelectedSearchGroup = Constants.EMPTY_GROUP; doFilterAction(); }, () => { return(!((SelectedSearchGroup == null || SelectedSearchGroup == Constants.EMPTY_GROUP) && (SelectedSearchCities == null || SelectedSearchCities == ""))); }); PropertyChanged += (NOT_USED, propertyNamedEventArgs) => { var propertyName = propertyNamedEventArgs.PropertyName; if (propertyName == "SelectedSearchGroup" || propertyName == "SelectedSearchCities") { ClearButtonCommand.RaiseCanExecuteChanged(); } }; DeleteButtonCommand = new RelayCommand( () => doRemoveStudentAction(), () => SelectedStudent != null && isUnchangedUser); PropertyChanged += (NOT_USED, propertyNamedEventArgs) => { var propertyName = propertyNamedEventArgs.PropertyName; if (propertyName == "SelectedStudent" || propertyName == "IsUnchangedUser") { DeleteButtonCommand.RaiseCanExecuteChanged(); } }; NewButtonCommand = new RelayCommand(() => doCreateStudentAction(), () => !isUnchangedUser); SaveButtonCommand = new RelayCommand(() => doSaveStudentAction(), () => !isUnchangedUser && SelectedStudent != null); PropertyChanged += (NOT_USED, propertyNamedEventArgs) => { var propertyName = propertyNamedEventArgs.PropertyName; List <String> avalibleNames = new List <String>(new String[] { "IsDateTimeEnabled", "SelectedStudent", "InputName", "InputSurname", "SelectedInputGroup", "InputBirthplace", "InputBirthDate", "InputIndexNumber" }); if (avalibleNames.Contains(propertyName)) { updateIsUnchangedStudent(); SaveButtonCommand.RaiseCanExecuteChanged(); NewButtonCommand.RaiseCanExecuteChanged(); } }; PreviousPageCommand = new RelayCommand(() => CurrentPageNumber--, () => CurrentPageNumber > 1); NextPageCommand = new RelayCommand(() => CurrentPageNumber++, () => CurrentPageNumber < AllPagesCount); PropertyChanged += (NOT_USED, propertyNamedEventArgs) => { var propertyName = propertyNamedEventArgs.PropertyName; if (propertyName == "AllPagesCount") { NextPageCommand.RaiseCanExecuteChanged(); PreviousPageCommand.RaiseCanExecuteChanged(); } if (propertyName == "CurrentPageNumber") { NextPageCommand.RaiseCanExecuteChanged(); PreviousPageCommand.RaiseCanExecuteChanged(); regenerateStudentsListWithPagination(); } }; resetInputFields(); doFilterAction(); } catch (Exception e) { Console.WriteLine("Wystapil wyjatek: " + e.ToString()); } }