Package org.springframework.webflow.engine.model.registry

Source Code of org.springframework.webflow.engine.model.registry.DefaultFlowModelHolderTests

package org.springframework.webflow.engine.model.registry;

import java.util.Collections;
import java.util.LinkedList;

import junit.framework.TestCase;

import org.springframework.core.io.Resource;
import org.springframework.webflow.engine.model.AbstractStateModel;
import org.springframework.webflow.engine.model.EndStateModel;
import org.springframework.webflow.engine.model.FlowModel;
import org.springframework.webflow.engine.model.builder.DefaultFlowModelHolder;
import org.springframework.webflow.engine.model.builder.FlowModelBuilder;
import org.springframework.webflow.engine.model.builder.FlowModelBuilderException;

public class DefaultFlowModelHolderTests extends TestCase {
  private DefaultFlowModelHolder holder;
  private FlowModelBuilder builder;

  protected void setUp() {
    builder = new SimpleFlowBuilder();
    holder = new DefaultFlowModelHolder(builder);
  }

  public void testGetFlowDefinition() {
    FlowModel flow = holder.getFlowModel();
    assertNull(flow.getStartStateId());
    assertEquals("end", flow.getStates().get(0).getId());
  }

  public void testGetFlowDefinitionWithChangesRefreshed() {
    FlowModel flow = holder.getFlowModel();
    holder.refresh();
    flow = holder.getFlowModel();
    assertNull(flow.getStartStateId());
    assertEquals("end", flow.getStates().get(0).getId());
  }

  public class SimpleFlowBuilder implements FlowModelBuilder {

    public FlowModel getFlowModel() throws FlowModelBuilderException {
      FlowModel flow = new FlowModel();
      flow.setStates(new LinkedList<AbstractStateModel>(Collections.singletonList(new EndStateModel("end"))));
      return flow;
    }

    public void build() throws FlowModelBuilderException {
      // no-op
    }

    public void mergeParent() throws FlowModelBuilderException {
      // no-op
    }

    public void dispose() throws FlowModelBuilderException {
      // no-op
    }

    public void init() throws FlowModelBuilderException {
      // no-op
    }

    public Resource getFlowModelResource() {
      return null;
    }

    public boolean hasFlowModelResourceChanged() {
      return false;
    }

  }
}
TOP

Related Classes of org.springframework.webflow.engine.model.registry.DefaultFlowModelHolderTests

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.