private string AssertParser <T>(InstallationModel model, string key, T value, Action <InstallationModel, T> assert) { var args = new[] { $"{key.Split('.').Last()}={value}" }; var models = model.Steps.Cast <IValidatableReactiveObject>().Concat(new[] { model }).ToList(); var viewModelArgumentParser = new ModelArgumentParser(models, args); assert(model, value); var msiParams = model.ToMsiParamsString(); msiParams.Should().NotBeEmpty(); return(msiParams); }