public async Task <FlowResult <FlowState> > CreateFlowStateAsync(InitFlowStateModel model) { var set = StateManager.GetFlowSet <FlowState>(); var typeSet = StateManager.GetFlowSet <FlowType>(); var type = await typeSet.GetByIdAsync(model.TypeId); if (type == null) { return(FlowResult <FlowState> .Failed(new FlowError(FlowErrors.ItemNotFound, nameof(type)))); } var entity = FlowEntity.InitializeType(new FlowState() { Name = model.Name, Title = model.Title, StateType = (byte)model.StateType, TypeId = type.Id, Tag = model.Tag, }); var result = await set.CreateAsync(entity); return(FlowResult <FlowState> .Successful(result)); }
public async Task <IActionResult> Create(InitFlowStateModel model) { var result = await FlowManager.InitFlowStateAsync(model); HandleFlowResult(result); return(View("Create", new InitFlowStateModel() { TypeId = model.TypeId })); }
public async Task IntiFlowState_WithEmptyName_MustError() { //Arrange var stateManager = new MockState().MockStateManager(); var flowManager = new ManagerFactory().GetFlowManager(stateManager); var initModel = new InitFlowStateModel() { Name = string.Empty, Title = "Test Title", Tag = "Test", StateType = FlowStateTypes.Purposed, TypeId = Guid.NewGuid(), }; //Act var act = await flowManager.InitFlowStateAsync(initModel); //Assert LogTestInfo(initModel, act); Assert.False(act.Succeeded); Assert.NotEmpty(act.Errors); }
public async Task IntiFlowState_WithCorrectModel_InitializeNewState() { //Arrange var stateManager = new MockState().MockStateManager(); var flowManager = new ManagerFactory().GetFlowManager(stateManager); var flowType = MockData.GetFlowTypes()[0]; var initModel = new InitFlowStateModel() { Name = "Test", Title = "Test Title", Tag = "Test", StateType = FlowStateTypes.Purposed, TypeId = flowType.Id, }; //Act var act = await flowManager.InitFlowStateAsync(initModel); //Assert LogTestInfo(initModel, act); Assert.True(act.Succeeded); }
public async Task <FlowResult <FlowState> > InitFlowStateAsync(InitFlowStateModel initModel) { var result = await HandleRequestAsync(new InitFlowStateRequest(StateService), initModel); return(result); }