/* * Copyright 2005 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.wamblee.photos.path; import junit.framework.TestCase; import org.wamblee.photos.model.Path; /** * Test of the path. */ public class PathTest extends TestCase { // isRoot // parent // getId // size // getPart // remainder // child /** * Constructs a root path. Verifies that the methods return the correct results. * */ public void testRootPath() { Path path = new Path(); assertEquals("/", path.toString()); assertTrue(path.isRoot()); assertTrue(path.parent().isRoot()); assertNull(path.getId()); assertEquals(0, path.size()); assertNull(path.remainder()); assertEquals("/hallo", path.child("hallo").toString()); } /** * Construcst a non-root path. Verifies that all methods return the appropriate results. * */ public void testNonRootPath() { Path path = new Path("/a/b/c"); assertEquals("/a/b/c", path.toString()); assertEquals(3, path.size()); assertEquals("a", path.getPart(0)); assertEquals("b", path.getPart(1)); assertEquals("c", path.getPart(2)); assertEquals("c", path.getId()); assertFalse(path.isRoot()); Path parent = path.parent(); assertEquals("/a/b", parent.toString()); assertEquals("b", parent.getId()); Path child = path.child("ddd"); assertEquals("/a/b/c/ddd", child.toString()); Path remainder = path.remainder(); assertEquals("/b/c", remainder.toString()); } }