[dna-commits] DNA SVN: r233 - trunk/dna-spi/src/test/java/org/jboss/dna/spi/graph/impl.

dna-commits at lists.jboss.org dna-commits at lists.jboss.org
Mon Jun 2 16:12:41 EDT 2008


Author: jverhaeg at redhat.com
Date: 2008-06-02 16:12:41 -0400 (Mon, 02 Jun 2008)
New Revision: 233

Modified:
   trunk/dna-spi/src/test/java/org/jboss/dna/spi/graph/impl/NameValueFactoryTest.java
Log:
DNA-89: Added getNamespaceRegistry() to NameFactory, SequencerOutput, and impls, as well as constant for "jcr:primaryType" to NameFactory
DNA-94: Changed to throw IAE if name is null or empty

Modified: trunk/dna-spi/src/test/java/org/jboss/dna/spi/graph/impl/NameValueFactoryTest.java
===================================================================
--- trunk/dna-spi/src/test/java/org/jboss/dna/spi/graph/impl/NameValueFactoryTest.java	2008-06-02 20:11:36 UTC (rev 232)
+++ trunk/dna-spi/src/test/java/org/jboss/dna/spi/graph/impl/NameValueFactoryTest.java	2008-06-02 20:12:41 UTC (rev 233)
@@ -2,7 +2,7 @@
  * JBoss, Home of Professional Open Source.
  * Copyright 2008, Red Hat Middleware LLC, and individual contributors
  * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors. 
+ * distribution for a full listing of individual contributors.
  *
  * This is free software; you can redistribute it and/or modify it
  * under the terms of the GNU Lesser General Public License as
@@ -25,6 +25,7 @@
 import static org.junit.Assert.assertThat;
 import org.jboss.dna.common.text.TextEncoder;
 import org.jboss.dna.spi.graph.Name;
+import org.jboss.dna.spi.graph.NamespaceRegistry;
 import org.jboss.dna.spi.graph.Path;
 import org.jboss.dna.spi.graph.ValueFactory;
 import org.junit.Before;
@@ -32,63 +33,88 @@
 
 /**
  * @author Randall Hauch
+ * @author John Verhaeg
  */
 public class NameValueFactoryTest {
 
-    public static final TextEncoder NO_OP_ENCODER = Path.NO_OP_ENCODER;
+	public static final TextEncoder NO_OP_ENCODER = Path.NO_OP_ENCODER;
 
-    private BasicNamespaceRegistry registry;
-    private ValueFactory<String> stringValueFactory;
-    private NameValueFactory factory;
-    private TextEncoder encoder;
-    private Name name;
+	private NamespaceRegistry registry;
+	private ValueFactory<String> stringValueFactory;
+	private NameValueFactory factory;
+	private TextEncoder encoder;
+	private Name name;
 
-    @Before
-    public void beforeEach() throws Exception {
-        this.registry = new BasicNamespaceRegistry();
-        this.registry.register("dna", "http://www.jboss.org/dna/namespace");
-        this.encoder = Path.DEFAULT_ENCODER;
-        this.stringValueFactory = new StringValueFactory(encoder);
-        this.factory = new NameValueFactory(registry, encoder, stringValueFactory);
-    }
+	@Before
+	public void beforeEach() throws Exception {
+		this.registry = new BasicNamespaceRegistry();
+		this.registry.register("dna", "http://www.jboss.org/dna/namespace");
+		this.encoder = Path.DEFAULT_ENCODER;
+		this.stringValueFactory = new StringValueFactory(encoder);
+		this.factory = new NameValueFactory(registry, encoder, stringValueFactory);
+	}
 
-    @Test
-    public void shouldCreateNameFromSingleStringInPrefixedNamespaceFormatWithoutPrefix() {
-        name = factory.create("a");
-        assertThat(name.getLocalName(), is("a"));
-        assertThat(name.getNamespaceUri(), is(this.registry.getNamespaceForPrefix("")));
-    }
+	@Test
+	public void shouldCreateNameFromSingleStringInPrefixedNamespaceFormatWithoutPrefix() {
+		name = factory.create("a");
+		assertThat(name.getLocalName(), is("a"));
+		assertThat(name.getNamespaceUri(), is(this.registry.getNamespaceForPrefix("")));
+	}
 
-    @Test
-    public void shouldCreateNameFromSingleStringInPrefixedNamespaceFormat() {
-        name = factory.create("dna:something");
-        assertThat(name.getLocalName(), is("something"));
-        assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
-        assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}something"));
-    }
+	@Test
+	public void shouldCreateNameFromSingleStringInPrefixedNamespaceFormat() {
+		name = factory.create("dna:something");
+		assertThat(name.getLocalName(), is("something"));
+		assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
+		assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}something"));
+	}
 
-    @Test
-    public void shouldCreateNameFromSingleEncodedStringInPrefixedNamespaceFormat() {
-        name = factory.create(encoder.encode("dna") + ":" + encoder.encode("some/thing"));
-        assertThat(name.getLocalName(), is("some/thing"));
-        assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
-        assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}some/thing"));
-    }
+	@Test
+	public void shouldCreateNameFromSingleEncodedStringInPrefixedNamespaceFormat() {
+		name = factory.create(encoder.encode("dna") + ":" + encoder.encode("some/thing"));
+		assertThat(name.getLocalName(), is("some/thing"));
+		assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
+		assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}some/thing"));
+	}
 
-    @Test
-    public void shouldCreateNameFromSingleStringInStandardFullNamespaceFormat() {
-        name = factory.create("{http://www.jboss.org/dna/namespace}something");
-        assertThat(name.getLocalName(), is("something"));
-        assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
-        assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}something"));
-    }
+	@Test
+	public void shouldCreateNameFromSingleStringInStandardFullNamespaceFormat() {
+		name = factory.create("{http://www.jboss.org/dna/namespace}something");
+		assertThat(name.getLocalName(), is("something"));
+		assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
+		assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}something"));
+	}
 
-    @Test
-    public void shouldCreateNameFromSingleEncodedStringInStandardFullNamespaceFormat() {
-        name = factory.create("{" + encoder.encode("http://www.jboss.org/dna/namespace") + "}" + encoder.encode("some/thing"));
-        assertThat(name.getLocalName(), is("some/thing"));
-        assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
-        assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}some/thing"));
-    }
+	@Test
+	public void shouldCreateNameFromSingleEncodedStringInStandardFullNamespaceFormat() {
+		name = factory.create("{" + encoder.encode("http://www.jboss.org/dna/namespace") + "}" + encoder.encode("some/thing"));
+		assertThat(name.getLocalName(), is("some/thing"));
+		assertThat(name.getNamespaceUri(), is("http://www.jboss.org/dna/namespace"));
+		assertThat(name.getString(NO_OP_ENCODER), is("{http://www.jboss.org/dna/namespace}some/thing"));
+	}
 
+	@Test
+	public void shouldProvideAccessToNamespaceRegistryPassedInConstructor() {
+		assertThat(factory.getNamespaceRegistry(), is(registry));
+	}
+
+	@Test( expected = IllegalArgumentException.class )
+	public void shouldNotAllowNullLocalName() {
+		factory.create("a", (String)null);
+	}
+
+	@Test( expected = IllegalArgumentException.class )
+	public void shouldNotAllowNullLocalNameWithEncoder() {
+		factory.create("a", null, encoder);
+	}
+
+	@Test( expected = IllegalArgumentException.class )
+	public void shouldNotAllowEmptyLocalName() {
+		factory.create("a", "");
+	}
+
+	@Test( expected = IllegalArgumentException.class )
+	public void shouldNotAllowEmptyLocalNameWithEncoder() {
+		factory.create("a", "", encoder);
+	}
 }




More information about the dna-commits mailing list