package kr.co.zumo.app.lifeplus.activity.factory;

import junit.framework.Assert;

import org.junit.Test;

import kr.co.zumo.app.lifeplus.activity.BlockMemberActivity;
import kr.co.zumo.app.lifeplus.activity.FAQActivity;
import kr.co.zumo.app.lifeplus.activity.MainActivity;
import kr.co.zumo.app.lifeplus.activity.NetworkErrorActivity;
import kr.co.zumo.app.lifeplus.activity.PinConfirmActivity;
import kr.co.zumo.app.lifeplus.activity.PinResetActivity;
import kr.co.zumo.app.lifeplus.activity.RestMemberActivity;
import kr.co.zumo.app.lifeplus.activity.SignUpActivity;
import kr.co.zumo.app.lifeplus.activity.OnBoardingActivity;
import kr.co.zumo.app.lifeplus.supervisor.ScreenID;

public class ActivityFactoryTest {

  @Test
  public void getActivityClass() {
    ActivityFactory factory = new ActivityFactory();

    Assert.assertEquals(MainActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_MAIN));
    Assert.assertEquals(PinConfirmActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_PIN));
    Assert.assertEquals(PinResetActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_PIN_RESET));
    Assert.assertEquals(SignUpActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_SIGN_UP));
    Assert.assertEquals(OnBoardingActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_ON_BOARDING));
    Assert.assertEquals(NetworkErrorActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_NETWORK_ERROR));
    Assert.assertEquals(FAQActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_FAQ));
    Assert.assertEquals(RestMemberActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_MEMBER_REST));
    Assert.assertEquals(BlockMemberActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_MEMBER_BLOCK));
    // fixme 맞는 액티비티로 수정해야함
//    Assert.assertEquals(MainActivity.class, factory.getActivityClass(ScreenID.ACTIVITY_AUTHORIZATION));
    Assert.assertEquals(null, factory.getActivityClass(-1));
  }
}