Package no.ugland.utransprod.gui.handlers.tester

Source Code of no.ugland.utransprod.gui.handlers.tester.OrderViewHandlerTest

package no.ugland.utransprod.gui.handlers.tester;

import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertNotNull;
import static org.mockito.Mockito.when;

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

import no.ugland.utransprod.gui.DeviationOverviewViewFactory;
import no.ugland.utransprod.gui.Login;
import no.ugland.utransprod.gui.OrderPanelTypeEnum;
import no.ugland.utransprod.gui.handlers.DeviationViewHandlerFactory;
import no.ugland.utransprod.gui.handlers.OrderViewHandler;
import no.ugland.utransprod.gui.model.OrderModel;
import no.ugland.utransprod.model.ConstructionType;
import no.ugland.utransprod.model.Customer;
import no.ugland.utransprod.model.Order;
import no.ugland.utransprod.model.OrderLine;
import no.ugland.utransprod.model.ProductArea;
import no.ugland.utransprod.model.Transport;
import no.ugland.utransprod.model.UserType;
import no.ugland.utransprod.model.UserTypeAccess;
import no.ugland.utransprod.model.WindowAccess;
import no.ugland.utransprod.service.ConstructionTypeManager;
import no.ugland.utransprod.service.CustomerManager;
import no.ugland.utransprod.service.ManagerRepository;
import no.ugland.utransprod.service.OrderManager;
import no.ugland.utransprod.service.ProductAreaManager;
import no.ugland.utransprod.test.FastTests;
import no.ugland.utransprod.util.ModelUtil;
import no.ugland.utransprod.util.Util;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

/**
* @author atle.brekka
*/
@Category(FastTests.class)
public class OrderViewHandlerTest {

  private OrderViewHandler viewHandler;
  @Mock
  private Login login;
  @Mock
  private ManagerRepository managerRepository;
  @Mock
  private DeviationViewHandlerFactory deviationViewHandlerFactory;
  @Mock
  private DeviationOverviewViewFactory deviationOverviewViewFactory;
  @Mock
  private ProductAreaManager productAreaManager;

  @Before
  public void setUp() throws Exception {
    MockitoAnnotations.initMocks(this);
    final OrderManager orderManager = (OrderManager) ModelUtil
        .getBean(OrderManager.MANAGER_NAME);
    when(managerRepository.getOrderManager()).thenReturn(orderManager);
    when(managerRepository.getProductAreaManager()).thenReturn(
        productAreaManager);
    final UserType userType = new UserType();
    userType.setIsAdmin(1);
    Set<UserTypeAccess> userTypeAccesses = new HashSet<UserTypeAccess>();
    UserTypeAccess userTypeAccess = new UserTypeAccess();
    userTypeAccess.setWindowAccess(new WindowAccess(null, "Attributter",
        null));
    userTypeAccesses.add(userTypeAccess);
    userType.setUserTypeAccesses(userTypeAccesses);

    viewHandler = new OrderViewHandler(login, managerRepository,
        deviationOverviewViewFactory, deviationViewHandlerFactory,
        false);
  }

  @After
  public void tearDown() throws Exception {
    CustomerManager customerManager = (CustomerManager) ModelUtil
        .getBean(CustomerManager.MANAGER_NAME);
    Customer customer = customerManager.findByCustomerNr(100000);
    if (customer != null) {
      customerManager.removeCustomer(customer);
    }
  }

  @Test
  public void testGetOrderListAtStart() {
    assertEquals(0, viewHandler.getObjectSelectionListSize());
  }

  @Test
  public void testGetAddRemoveString() {
    assertNotNull(viewHandler.getAddRemoveString());
    assertEquals("ordre", viewHandler.getAddRemoveString());
  }

  @Test
  public void testGetNewObject() {
    assertNotNull(viewHandler.getNewObject());
    assertEquals(Order.class, viewHandler.getNewObject().getClass());
  }

  @Test
  public void testGetTableModel() {
    assertNotNull(viewHandler.getTableModel(null));

  }

  @Test
  public void testGetAllCustomers() {
    List<Customer> customers = viewHandler.getCustomerList();
    assertNotNull(customers);
    assertEquals(true, customers.size() != 0);
  }

  @Test
  public void testGetAllConstructionTypes() {
    List<ConstructionType> types = viewHandler.getConstructionTypeList();
    assertNotNull(types);
    assertEquals(true, types.size() != 0);
  }

  @Test
  public void testGetAllTransports() {
    List<Transport> transports = viewHandler.getTransportList(false);
    assertNotNull(transports);
    assertEquals(true, transports.size() != 0);
  }

  @Test
  public void testFindNewOrders() {
    assertEquals(true, viewHandler.initAndGetOrderPanelSelectionList(
        OrderPanelTypeEnum.NEW_ORDERS).getSize() != 0);
  }

  @Test
  public void testSaveObjectExt() {
    ProductAreaManager productAreaManager = (ProductAreaManager) ModelUtil
        .getBean(ProductAreaManager.MANAGER_NAME);
    ProductArea productArea = productAreaManager
        .findByName("Garasje villa");
    ConstructionTypeManager constructionTypeManager = (ConstructionTypeManager) ModelUtil
        .getBean(ConstructionTypeManager.MANAGER_NAME);
    ConstructionType constructionType = constructionTypeManager
        .findByName("A1");
    OrderLine orderLine = new OrderLine();
    orderLine.setOrdNo(7);
    orderLine.setLnNo(13);
    Order order = new Order();
    order.setProductArea(productArea);
    order.setOrderNr("100100100");
    order.setConstructionType(constructionType);
    order.addOrderLine(orderLine);
    orderLine.setArticlePath(orderLine.getGeneratedArticlePath());
    order.setDeliveryAddress("deliveryAddress");
    order.setPostalCode("4841");
    order.setPostOffice("postOffice");
    order.setOrderDate(Util.getCurrentDate());
    OrderModel orderModel = new OrderModel(order, false, true, true, null,
        null);
    orderModel.setCustomerNr("100000");
    orderModel.setCustomerFirstName("test");
    orderModel.setCustomerLastName("testesen");
    viewHandler.saveObjectExt(orderModel, null);
    assertEquals(Integer.valueOf(1), orderLine.getIsDefault());
  }
}
TOP

Related Classes of no.ugland.utransprod.gui.handlers.tester.OrderViewHandlerTest

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.