Index: tests/phpunit/tests/shortcode.php
===================================================================
--- tests/phpunit/tests/shortcode.php	(revision 33652)
+++ tests/phpunit/tests/shortcode.php	(working copy)
@@ -4,7 +4,7 @@
  */
 class Tests_Shortcode extends WP_UnitTestCase {
 
-	protected $shortcodes = array( 'test-shortcode-tag', 'footag', 'bartag', 'baztag', 'dumptag', 'hyphen', 'hyphen-foo', 'hyphen-foo-bar' );
+	protected $shortcodes = array( 'test-shortcode-tag', 'footag', 'bartag', 'baztag', 'dumptag', 'hyphen', 'hyphen-foo', 'hyphen-foo-bar', 'url' );
 
 	function setUp() {
 		parent::setUp();
@@ -73,6 +73,10 @@
 		return __FUNCTION__;
 	}
 
+	function _shortcode_url() {
+		return 'http://www.wordpress.org/';
+	}
+
 	function test_noatts() {
 		do_shortcode('[test-shortcode-tag /]');
 		$this->assertEquals( '', $this->atts );
@@ -454,6 +458,30 @@
 				'[gallery]<div>Hello</div>[/gallery]',
 				'',
 			),
+			array(
+				'[url]',
+				'http://www.wordpress.org/',
+			),
+			array(
+				'<a href="[url]">',
+				'<a href="http://www.wordpress.org/">',
+			),
+			array(
+				'<a href=[url] >',
+				'<a href=http://www.wordpress.org/ >',
+			),
+			array(
+				'<a href="[url]plugins/">',
+				'<a href="http://www.wordpress.org/plugins/">',
+			),
+			array(
+				'<a href="bad[url]">',
+				'<a href="//www.wordpress.org/">',
+			),
+			array(
+				'<a onclick="bad[url]">',
+				'<a onclick="bad[url]">',
+			),
 		);
 	}
 
