Package rabbit.data.access.model

Source Code of rabbit.data.access.model.LaunchConfigurationDescriptorTest

package rabbit.data.access.model;

import rabbit.data.access.model.LaunchConfigurationDescriptor;

import com.google.common.base.Objects;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;

import org.eclipse.debug.core.ILaunchManager;
import org.junit.Test;

/**
* @see LaunchConfigurationDescriptor
*/
public class LaunchConfigurationDescriptorTest {

  @Test(expected = NullPointerException.class)
  public void testConstructor_nameNull() {
    createDescriptor(null, "modeId", "typeId");
  }

  @Test(expected = NullPointerException.class)
  public void testConstructor_modeIdNull() {
    createDescriptor("name", null, "typeId");
  }

  @Test(expected = NullPointerException.class)
  public void testConstructor_typeIdNull() {
    createDescriptor("name", "modeId", null);
  }

  @Test
  public void testGetName() {
    String name = "aName";
    assertEquals(name, createDescriptor(name, "", "").getLaunchName());
  }
 
  @Test
  public void testFindLaunchConfigurationType() {
    // A valid type id:
    String typeId = "org.eclipse.jdt.launching.localJavaApplication";
    assertEquals(typeId, createDescriptor("a", "run", typeId)
        .findLaunchConfigurationType().getIdentifier());
   
    // An invalid type id:
    typeId = "not.exist.type.id";
    assertNull(createDescriptor("a", "run", typeId)
        .findLaunchConfigurationType());
  }
 
  @Test
  public void testFindLaunchMode() {
    String modeId = ILaunchManager.DEBUG_MODE;
    assertEquals(modeId, createDescriptor("a", modeId, "typeId")
        .findLaunchMode().getIdentifier());
   
    assertNull(createDescriptor("a", "invalid", "typeId").findLaunchMode());
  }

  @Test
  public void testGetModeId() {
    String id = "modeId";
    assertEquals(id, createDescriptor("", id, "").getLaunchModeId());
  }

  @Test
  public void testGetTypeId() {
    String id = "typeId";
    assertEquals(id, createDescriptor("", "", id).getLaunchTypeId());
  }
 
  @Test
  public void testHashCode() {
    String name = "name";
    String mode = "mode";
    String type = "type";
    int hashcode = Objects.hashCode(name, mode, type);
   
    LaunchConfigurationDescriptor des = createDescriptor(name, mode, type);
    assertEquals(hashcode, des.hashCode());
  }
 
  @Test
  public void testEquals() {
    String name = "name";
    String mode = "mode";
    String type = "type";
   
    LaunchConfigurationDescriptor des1 = createDescriptor(name, mode, type);
    assertFalse(des1.equals(null));
    assertFalse(des1.equals(new Object()));
    assertTrue(des1.equals(des1));
   
    LaunchConfigurationDescriptor des2 = createDescriptor(name, mode, type);
    assertTrue(des1.equals(des2));
   
    des2 = createDescriptor(name + ".", mode, type);
    assertFalse(des1.equals(des2));
   
    des2 = createDescriptor(name, mode + ".", type);
    assertFalse(des1.equals(des2));
   
    des2 = createDescriptor(name, mode, type + ".");
    assertFalse(des1.equals(des2));
  }

  /**
   * Creates a descriptor for testing.
   *
   * @param name The name of the descriptor.
   * @param modeId The mode ID of the descriptor.
   * @param typeId The type ID of the descriptor.
   * @return A descriptor created using the parameters.
   */
  protected LaunchConfigurationDescriptor createDescriptor(String name,
      String modeId, String typeId) {
    return new LaunchConfigurationDescriptor(name, modeId, typeId);
  }
}
TOP

Related Classes of rabbit.data.access.model.LaunchConfigurationDescriptorTest

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.