Author: aadamchik
Date: Thu Nov 15 19:43:49 2012
New Revision: 1409951

URL: http://svn.apache.org/viewvc?rev=1409951&view=rev
Log:
CAY-1772  Real support for DbEntity catalogs

better unit tests for QuotingStrategy

Added:
    
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java
      - copied, changed from r1409949, 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
    
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/NoQuotingStrategyTest.java
      - copied, changed from r1409949, 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
Modified:
    
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/DefaultQuotingStrategy.java
    
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java

Modified: 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/DefaultQuotingStrategy.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/DefaultQuotingStrategy.java?rev=1409951&r1=1409950&r2=1409951&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/DefaultQuotingStrategy.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/DefaultQuotingStrategy.java
 Thu Nov 15 19:43:49 2012
@@ -55,6 +55,10 @@ class DefaultQuotingStrategy implements 
         StringBuilder buffer = new StringBuilder();
 
         for (String part : fqnParts) {
+            
+            if(part == null) {
+                continue;
+            }
 
             if (buffer.length() > 0) {
                 buffer.append(".");

Modified: 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java?rev=1409951&r1=1409950&r2=1409951&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
 Thu Nov 15 19:43:49 2012
@@ -51,6 +51,10 @@ class NoQuotingStrategy implements Quoti
         StringBuilder buffer = new StringBuilder();
 
         for (String part : fqnParts) {
+            
+            if(part == null) {
+                continue;
+            }
 
             if (buffer.length() > 0) {
                 buffer.append(".");

Copied: 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java
 (from r1409949, 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java)
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java?p2=cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java&p1=cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java&r1=1409949&r2=1409951&rev=1409951&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java
 Thu Nov 15 19:43:49 2012
@@ -18,47 +18,14 @@
  ****************************************************************/
 package org.apache.cayenne.dba;
 
-import org.apache.cayenne.map.DbEntity;
+import junit.framework.TestCase;
 
-/**
- * @since 3.2 this is a top level class.
- */
-class NoQuotingStrategy implements QuotingStrategy {
+public class DefaultQuotingStrategyTest extends TestCase {
 
-    /**
-     * @deprecated since 3.2
-     */
-    @Deprecated
-    public String quoteString(String name) {
-        return quotedIdentifier(name);
+    public void testQuotedIdentifer() {
+        DefaultQuotingStrategy strategy = new DefaultQuotingStrategy("[", "]");
+        assertEquals("[a]", strategy.quotedIdentifier("a"));
+        assertEquals("[a]", strategy.quotedIdentifier(null, null, "a"));
+        assertEquals("[c].[b].[a]", strategy.quotedIdentifier("c", "b", "a"));
     }
-    
-    @Deprecated
-    public String quoteFullyQualifiedName(DbEntity entity) {
-        return quotedFullyQualifiedName(entity);
-    }
-
-    public String quotedFullyQualifiedName(DbEntity entity) {
-        return quotedIdentifier(entity.getCatalog(), entity.getSchema(), 
entity.getName());
-    }
-
-    public String quotedIdentifier(String... fqnParts) {
-
-        if (fqnParts.length == 1) {
-            return fqnParts[0];
-        }
-
-        StringBuilder buffer = new StringBuilder();
-
-        for (String part : fqnParts) {
-
-            if (buffer.length() > 0) {
-                buffer.append(".");
-            }
-
-            buffer.append(part);
-        }
-
-        return buffer.toString();
-    }
-}
\ No newline at end of file
+}

Copied: 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/NoQuotingStrategyTest.java
 (from r1409949, 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java)
URL: 
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/NoQuotingStrategyTest.java?p2=cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/NoQuotingStrategyTest.java&p1=cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java&r1=1409949&r2=1409951&rev=1409951&view=diff
==============================================================================
--- 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/NoQuotingStrategy.java
 (original)
+++ 
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/NoQuotingStrategyTest.java
 Thu Nov 15 19:43:49 2012
@@ -18,47 +18,14 @@
  ****************************************************************/
 package org.apache.cayenne.dba;
 
-import org.apache.cayenne.map.DbEntity;
+import junit.framework.TestCase;
 
-/**
- * @since 3.2 this is a top level class.
- */
-class NoQuotingStrategy implements QuotingStrategy {
+public class NoQuotingStrategyTest extends TestCase {
 
-    /**
-     * @deprecated since 3.2
-     */
-    @Deprecated
-    public String quoteString(String name) {
-        return quotedIdentifier(name);
+    public void testQuotedIdentifer() {
+        NoQuotingStrategy strategy = new NoQuotingStrategy();
+        assertEquals("a", strategy.quotedIdentifier("a"));
+        assertEquals("a", strategy.quotedIdentifier(null, null, "a"));
+        assertEquals("c.b.a", strategy.quotedIdentifier("c", "b", "a"));
     }
-    
-    @Deprecated
-    public String quoteFullyQualifiedName(DbEntity entity) {
-        return quotedFullyQualifiedName(entity);
-    }
-
-    public String quotedFullyQualifiedName(DbEntity entity) {
-        return quotedIdentifier(entity.getCatalog(), entity.getSchema(), 
entity.getName());
-    }
-
-    public String quotedIdentifier(String... fqnParts) {
-
-        if (fqnParts.length == 1) {
-            return fqnParts[0];
-        }
-
-        StringBuilder buffer = new StringBuilder();
-
-        for (String part : fqnParts) {
-
-            if (buffer.length() > 0) {
-                buffer.append(".");
-            }
-
-            buffer.append(part);
-        }
-
-        return buffer.toString();
-    }
-}
\ No newline at end of file
+}


Reply via email to