Package honeycrm.server.test.medium

Source Code of honeycrm.server.test.medium.OfferingCreateTest

package honeycrm.server.test.medium;

import honeycrm.client.dto.Dto;
import honeycrm.server.DemoDataProvider;
import honeycrm.server.domain.Offering;
import honeycrm.server.domain.UniqueService;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

public class OfferingCreateTest extends DatastoreTest {
  public void testCreateOfferings() {
    final Set<Long> productIds = createProducts();
   
    for (int i = 0; i < 10; i++) {
      final ArrayList<Dto> services = getServices(productIds);
      final Dto offering = getOffering(services);

      final long id = createService.create(offering);

      final Dto o = readService.get(Offering.class.getSimpleName(), id);
      assertNotNull(o.get("deadline"));
      assertNotNull(o.get("uniqueServices"));
      assertEquals(productIds.size(), ((Collection<Dto>) o.get("uniqueServices")).size());
    }
  }

  private Dto getOffering(final ArrayList<Dto> services) {
    final Dto offering = new Dto();
    offering.setModule(Offering.class.getSimpleName());
    offering.set("deadline", new Date(System.currentTimeMillis()));
    offering.set("uniqueServices", services);
    return offering;
  }

  private ArrayList<Dto> getServices(final Set<Long> productIds) {
    final ArrayList<Dto> services = new ArrayList<Dto>();

    for (final Long productId : productIds) {
      final Dto s = new Dto();
      s.setModule(UniqueService.class.getSimpleName());
      s.set("productID", productId);
      services.add(s);
    }

    return services;
  }

  private Set<Long> createProducts() {
    final Set<Long> ids = new HashSet<Long>();

    for (final Dto product: DemoDataProvider.getProducts(2)) {
      ids.add(createService.create(product));
    }

    return ids;
  }
}
TOP

Related Classes of honeycrm.server.test.medium.OfferingCreateTest

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.