TestActivityHandlerIT.java 2.84 KB
package com.zhaoonline.coupon.handler;

import com.zhaoonline.coupon.dispatcher.CouponDispatchHandler;
import com.zhaoonline.coupon.dispatcher.DefaultCouponDispatchHandler;
import com.zhaoonline.coupon.dispatcher.DefaultUserCouponMappingHandler;
import com.zhaoonline.coupon.dispatcher.UserCouponMappingHandler;
import com.zhaoonline.coupon.domain.CommonCouponEntity;
import com.zhaoonline.coupon.repository.CouponEntityRepository;
import com.zhaoonline.redis.repository.DataValueRepository;
import com.zhaoonline.redis.template.RedisTemplateFactory;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.support.AnnotationConfigContextLoader;

/**
 * Created by ZhaoOnline<br/>
 * User: yangyoupeng<br/>
 * Date: 2016/12/20<br/>
 * Time: 9:33<br/>
 * Description:ActivityHandler的集成测试
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class)
@Configuration
public class TestActivityHandlerIT {

    @Configuration
    public static class TestActivityHandlerITConfiguration {
        @Bean
        public CouponEntityRepository couponEntityRepository(){
            RedisTemplateFactory factory=new RedisTemplateFactory();
            JedisConnectionFactory connectionFactory=RedisUtils.createSimpleFactory();
            factory.setConnectionFactory(connectionFactory);
            DataValueRepository<CommonCouponEntity> redisRepository=new DataValueRepository<CommonCouponEntity>(factory);
            CouponEntityRepository repository = new CouponEntityRepository(redisRepository);
            return repository;
        }

        @Bean
        public CouponDispatchHandler coupenDispatcher(CouponEntityRepository couponEntityRepository ){
            CouponDispatchHandler coupenDispatcher =new DefaultCouponDispatchHandler(couponEntityRepository);
            return coupenDispatcher;
        }

        @Bean
        public UserCouponMappingHandler userCoupenMappingHandler(CouponEntityRepository couponEntityRepository ){
            DefaultUserCouponMappingHandler userCoupenMappingHandler =new DefaultUserCouponMappingHandler();
            return userCoupenMappingHandler;
        }

        @Bean
        public ActivityHandler activityHandler(CouponDispatchHandler coupenDispatcher,UserCouponMappingHandler userCoupenMappingHandler){
            ActivityHandler activityHandler  = new ActivityHandler(coupenDispatcher,userCoupenMappingHandler);
            return activityHandler;
        }
    }


    @Test
    public void testGetACoupenByActiviy(){

    }
}