LabelPresenterSpecs.java :  » UnTagged » more-than-enough » com » boodaba » todocarts » test » app » Android Open Source

Android Open Source » UnTagged » more than enough 
more than enough » com » boodaba » todocarts » test » app » LabelPresenterSpecs.java
package com.boodaba.todocarts.test.app;
import java.util.ArrayList;
import java.util.List;

import org.jmock.Expectations;
import org.junit.runner.RunWith;

import com.boodaba.todocarts.app.ILabelActivity;
import com.boodaba.todocarts.app.LabelPresenter;
import com.boodaba.todocarts.domain.ILabelRepository;
import com.boodaba.todocarts.domain.Label;

import static com.googlecode.instinct.expect.Expect.expect;
import com.googlecode.instinct.integrate.junit4.InstinctRunner;
import com.googlecode.instinct.marker.annotate.BeforeSpecification;
import com.googlecode.instinct.marker.annotate.Mock;
import com.googlecode.instinct.marker.annotate.Specification;
import com.googlecode.instinct.marker.annotate.Subject;


@RunWith(InstinctRunner.class)
public class LabelPresenterSpecs {
  @Subject private LabelPresenter SUT;
  
  @Mock private ILabelActivity labelActivity;
  @Mock private ILabelRepository labelRepository;
  
  @BeforeSpecification
  public void setUp() {
    SUT = new LabelPresenter(labelRepository);
  }
  
  @Specification
  void shouldSetTitleListOnActivity() {
    expect.that(new Expectations() {
      {
        List<Label> labelList = new ArrayList<Label>();
        labelList.add(new Label("label 1"));
        labelList.add(new Label("label 2"));
        labelList.add(new Label("label 3"));
        oneOf(labelRepository).findAll(); will(returnValue(labelList));
        
        List<String> titleList = new ArrayList<String>();
        titleList.add("label 1");
        titleList.add("label 2");
        titleList.add("label 3");
        oneOf(labelActivity).setLabelList(titleList);
      }
    });
    SUT.initializeWith(labelActivity);
  }
  
  @Specification
  void shouldSetTitleListOnReActivity() {
    expect.that(new Expectations() {
      {
        oneOf(labelRepository).findAll(); will(returnValue(new ArrayList<Label>()));
        oneOf(labelActivity).setLabelList(new ArrayList<String>());
        
        List<Label> labelList = new ArrayList<Label>();
        labelList.add(new Label("label 1"));
        labelList.add(new Label("label 2"));
        labelList.add(new Label("label 3"));
        oneOf(labelRepository).findAll(); will(returnValue(labelList));
        
        List<String> titleList = new ArrayList<String>();
        titleList.add("label 1");
        titleList.add("label 2");
        titleList.add("label 3");
        oneOf(labelActivity).setLabelList(titleList);
      }
    });
    SUT.initializeWith(labelActivity);
    SUT.returnTo();
  }
  
  @Specification
  void shouldStartCreateLabelActivity() {
    expect.that(new Expectations() {{
      oneOf(labelRepository).findAll(); will(returnValue(new ArrayList<Label>()));
      oneOf(labelActivity).setLabelList(new ArrayList<String>());
      
      oneOf(labelActivity).startAddLabel();
    }});
    SUT.initializeWith(labelActivity);
    SUT.startAddLabel();
  }
  
  @Specification
  void shouldStartEditLabelActivity() {
    expect.that(new Expectations() {{
      oneOf(labelRepository).findAll(); will(returnValue(new ArrayList<Label>()));
      oneOf(labelActivity).setLabelList(new ArrayList<String>());
      
      oneOf(labelActivity).getSelectedTitle(); will(returnValue("label 1"));
      oneOf(labelActivity).startEditLabel("label 1");
    }});
    SUT.initializeWith(labelActivity);
    SUT.startEditLabel();
  }
  
  @Specification
  void shouldShowLabelTodosActivity() {
    expect.that(new Expectations() {{
      oneOf(labelRepository).findAll(); will(returnValue(new ArrayList<Label>()));
      oneOf(labelActivity).setLabelList(new ArrayList<String>());
      
      oneOf(labelActivity).getSelectedTitle(); will(returnValue("label 1"));
      oneOf(labelActivity).startLabelTodos("label 1");
    }});
    SUT.initializeWith(labelActivity);
    SUT.showLabelTodos();
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.