});\r
 \r
 test("expressions - attributes", function() {\r
-       expect(16);\r
+       expect(19);\r
        t( "Attribute Exists", "a[@title]", ["google"] );\r
        t( "Attribute Exists", "*[@title]", ["google"] );\r
        t( "Attribute Exists", "[@title]", ["google"] );\r
        t( "Attribute Ends With", "a[@href $= 'org/']", ["mark"] );\r
        t( "Attribute Contains", "a[@href *= 'google']", ["google","groups"] );\r
        \r
+       t("Select options via [@selected]", "#select1 option[@selected]", ["option1a"] );\r
+       t("Select options via [@selected]", "#select2 option[@selected]", ["option2d"] );\r
+       t("Select options via [@selected]", "#select3 option[@selected]", ["option3b", "option3c"] );\r
+       \r
        t( "Grouped Form Elements", "input[@name='foo[bar]']", ["hidden2"] );\r
        \r
        t( ":not() Existing attribute", "select:not([@multiple])", ["select1", "select2"]);\r
 
                        enabled: "!a.disabled",\r
                        disabled: "a.disabled",\r
                        checked: "a.checked",\r
-                       selected: "a.selected || jQuery.attr(a, 'selected')",\r
+                       selected: "a.selected",\r
 \r
                        // Form elements\r
                        text: "a.type=='text'",\r
                        value: "value",\r
                        disabled: "disabled",\r
                        checked: "checked",\r
-                       readonly: "readOnly"\r
+                       readonly: "readOnly",\r
+                       selected: "selected"\r
                };\r
                \r
                // IE actually uses filters for opacity ... elem is actually elem.style\r