pvl.dns.labels: fix join to support FQDNs
authorTero Marttila <tero.marttila@aalto.fi>
Fri, 27 Feb 2015 14:05:39 +0200
changeset 638 92a78c787fe9
parent 637 6674b18f6829
child 639 cc27c830a911
pvl.dns.labels: fix join to support FQDNs
pvl/dns/labels.py
--- a/pvl/dns/labels.py	Fri Feb 27 11:54:22 2015 +0200
+++ b/pvl/dns/labels.py	Fri Feb 27 14:05:39 2015 +0200
@@ -1,10 +1,26 @@
-# TODO: support fqdns in parts
 def join (*parts) :
     """
         Join a domain name from labels.
+
+        >>> print join('foo')
+        foo
+        >>> print join('foo', 'example.com.')
+        foo.example.com.
+        >>> print join('foo', 'bar', 'example.com.')
+        foo.bar.example.com.
+        >>> print join('example.net.', 'example.com')
+        example.net.
     """
 
-    return '.'.join(str(part) for part in parts)
+    out = []
+
+    for part in parts:
+        out.append(part)
+
+        if part.endswith('.'):
+            break
+    
+    return '.'.join(out)
 
 def fqdn (*parts) :
     """