package com.salesmanager.test.shipping; import java.util.ArrayList; import java.util.List; import java.util.Locale; import javax.inject.Inject; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.TestExecutionListeners; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.support.DependencyInjectionTestExecutionListener; import com.salesmanager.core.business.modules.integration.shipping.impl.ShippingDecisionPreProcessorImpl; import com.salesmanager.core.model.common.Delivery; import com.salesmanager.core.model.reference.country.Country; import com.salesmanager.core.model.reference.zone.Zone; import com.salesmanager.core.model.shipping.PackageDetails; import com.salesmanager.core.model.shipping.ShippingQuote; import com.salesmanager.core.model.system.IntegrationModule; @Ignore public class ShippingMethodDecisionTest extends com.salesmanager.test.common.AbstractSalesManagerCoreTestCase { @Inject ShippingDecisionPreProcessorImpl shippingMethodDecisionProcess; //@Test @Ignore public void validateShippingMethod() throws Exception { ShippingQuote quote = new ShippingQuote(); PackageDetails pDetail = new PackageDetails(); pDetail.setShippingHeight(20); pDetail.setShippingLength(10); pDetail.setShippingWeight(70); pDetail.setShippingWidth(78); List<PackageDetails> details = new ArrayList<PackageDetails>(); details.add(pDetail); Delivery delivery = new Delivery(); delivery.setAddress("358 Du Languedoc"); delivery.setCity("Boucherville"); delivery.setPostalCode("J4B 8J9"); Country country = new Country(); country.setIsoCode("CA"); country.setName("Canada"); //country.setIsoCode("US"); //country.setName("United States"); delivery.setCountry(country); Zone zone = new Zone(); zone.setCode("QC"); zone.setName("Quebec"); //zone.setCode("NY"); //zone.setName("New York"); delivery.setZone(zone); IntegrationModule currentModule = new IntegrationModule(); currentModule.setCode("canadapost"); quote.setCurrentShippingModule(currentModule); quote.setShippingModuleCode(currentModule.getCode()); IntegrationModule canadapost = new IntegrationModule(); canadapost.setCode("canadapost"); IntegrationModule ups = new IntegrationModule(); ups.setCode("ups"); IntegrationModule inhouse = new IntegrationModule(); inhouse.setCode("customQuotesRules"); List<IntegrationModule> allModules = new ArrayList<IntegrationModule>(); allModules.add(canadapost); allModules.add(ups); allModules.add(inhouse); shippingMethodDecisionProcess.prePostProcessShippingQuotes(quote, details, null, delivery, null, null, null, currentModule, null, allModules, Locale.CANADA); System.out.println("Done : " + quote.getCurrentShippingModule()!=null ? quote.getCurrentShippingModule().getCode() : currentModule.getCode()); } }