Package

Source Code of EventsTests

import static org.junit.Assert.assertTrue;

import java.util.List;
import java.util.Set;

import javax.naming.InvalidNameException;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import easysm.datatypes.Name;
import easysm.datatypes.information.EventInfo;
import easysm.datatypes.information.ParameterInfo;
import easysm.datatypes.information.ProjectInfo;
import easysm.datatypes.information.StateObserverInfo;
import easysm.executors.Main;
import easysm.factories.SetFactory;
import easysm.stores.Event;
import easysm.stores.Type;

/**
* @author Federica Lupi
* @author Marta Semeria
*/
public class EventsTests
{
  Main main;
  Name ePine;
  Name eIffy;

  @Before
  public void setUp()
  {
    main = new Main(false);
    Name name = null;
    try {
      name = new Name("Test");
      ePine = new Name("pine");
      eIffy = new Name("iffy");
    } catch (InvalidNameException e) {
      //
    }
    ProjectInfo projectInfo = new ProjectInfo(name, "Test", "Test");
    main.doNewProject(projectInfo);
  }

  @After
  public void tearDown()
  {
    main = null;
  }

  @Test
  public void Main_doAddEvent_OneValidEvent()
  {
    Set<ParameterInfo> params = SetFactory.createSet(ParameterInfo.class);
    EventInfo eInfo = new EventInfo(eIffy, params);
    main.doAddEvent(eInfo);
    List<Event> eSet = main.events().eventList();
    assertTrue(eSet.size() == 2);
    assertTrue(eSet.contains(new Event(eInfo)));

  }

  @Test
  public void Main_doAddEvent_WithSameNameOfSO()
  {
    Set<ParameterInfo> params = SetFactory.createSet(ParameterInfo.class);
    main.doAddStateObserver(new StateObserverInfo(ePine, Type.INTEGER, null));
    main.doAddEvent(new EventInfo(ePine, params));
    List<Event> eSet = main.events().eventList();
    assertTrue(eSet.size() == 1);
  }

  @Test
  public void Main_doAddEvent_WithSameNameOfParameters()
  {
    Set<ParameterInfo> params = SetFactory.createSet(ParameterInfo.class);
    params.add(new ParameterInfo(eIffy, Type.INTEGER));
    params.add(new ParameterInfo(eIffy, Type.STRING));
    main.doAddEvent(new EventInfo(ePine, params));
    List<Event> eSet = main.events().eventList();
    assertTrue(eSet.size() == 1);
  }

  @Test
  public void Main_doUpdateEvent_OneValidEvent()
  {
    main.doAddEvent(new EventInfo(eIffy, null));
    List<Event> eSet = main.events().eventList();
    Event ev = null;
    for (Event e : eSet) {
      if (e.name().equals(eIffy))
        ev = e;
    }
    EventInfo eInfo = new EventInfo(ePine, null);
    main.doUpdateEvent(ev, eInfo);
    assertTrue(eSet.size() == 2);
    assertTrue(ev.name().equals(ePine));
    assertTrue(ev.parameters().size() == 0);
  }

  @Test
  public void Main_doDeleteEvent()
  {
    Set<ParameterInfo> params = SetFactory.createSet(ParameterInfo.class);
    params.add(new ParameterInfo(eIffy, Type.INTEGER));
    main.doAddEvent(new EventInfo(ePine, params));
    List<Event> eSet = main.events().eventList();
    for (Event e : eSet)
      main.doDeleteEvent(e);
    assertTrue(eSet.size() == 1);
  }
}
TOP

Related Classes of EventsTests

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.