Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
af58e38
Adding transparent-color rule
hrobertking Mar 28, 2017
4926c78
Adding obsolete-properties rule
hrobertking Mar 28, 2017
e74cdad
Adding no-tabs rule
hrobertking Mar 28, 2017
2321a73
Adding no-filter rules
hrobertking Mar 28, 2017
042ce2f
Adding lowerase rule
hrobertking Mar 28, 2017
0061263
Adding color-contrast rule
hrobertking Mar 28, 2017
2e21ede
Adding background-color rule
hrobertking Mar 28, 2017
8d2e616
Adding accessibility rules
hrobertking Mar 28, 2017
dc58be7
Adding accessibility rules
hrobertking Mar 28, 2017
48a199a
Merge pull request #1 from hrobertking/transparent-color
hrobertking Mar 28, 2017
e89433e
Merge pull request #2 from hrobertking/obsolete-properties
hrobertking Mar 28, 2017
e0f7da5
Merge pull request #3 from hrobertking/no-tabs
hrobertking Mar 28, 2017
129a32c
Merge pull request #4 from hrobertking/no-filter
hrobertking Mar 28, 2017
5127bfb
Merge pull request #5 from hrobertking/lowercase
hrobertking Mar 28, 2017
03e0004
Merge pull request #6 from hrobertking/color-contrast
hrobertking Mar 28, 2017
c0ba106
Merge pull request #7 from hrobertking/background-color
hrobertking Mar 28, 2017
3dcc3e7
Merge pull request #8 from hrobertking/accessibility
hrobertking Mar 28, 2017
a9ed926
Adding rules-max rule
hrobertking Apr 3, 2017
743fb84
Merge pull request #9 from hrobertking/rules-max
hrobertking Apr 3, 2017
9b677ef
Adding selector-pattern rule
hrobertking Apr 3, 2017
4030fb0
Merge pull request #10 from hrobertking/selector-name-pattern
hrobertking Apr 3, 2017
561e3e1
Adding ability to pass cli options to rules
hrobertking Apr 4, 2017
2d01d1a
Adding naming convention option passthru
hrobertking Apr 4, 2017
7b73721
Merge pull request #11 from hrobertking/selector-name-pattern
hrobertking Apr 4, 2017
a0b08ab
Defaulting 'evidence' property to empty string
hrobertking Apr 6, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Adding lowerase rule
  • Loading branch information
hrobertking committed Mar 28, 2017
commit 042ce2f6c6e132ae83118adb2e479cf41159b58d
32 changes: 32 additions & 0 deletions src/rules/lowercase.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*
* Rule: properties and functions should be lowercase
*/

CSSLint.addRule({

// rule information
id: "lowercase",
name: "Require lowercase properties and functions",
desc: "All properties and functions should be lowercase",
browsers: "All",

// initialization
init: function(parser, reporter) {
"use strict";
var rule = this;

parser.addListener("property", function(event) {
var prop = event.property.text,
func = /([a-z\-]+)\(/i.exec(event.value.text);

if (prop !== prop.toLowerCase()) {
reporter.report("Property is not lowercase.", event.line, event.col, rule);
} else if (func) {
if (func[1] !== func[1].toLowerCase()) {
reporter.report("Function is not lowercase.", event.line, event.col, rule);
}
}
});
}

});
38 changes: 38 additions & 0 deletions tests/rules/lowercase.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
(function() {
"use strict";
var Assert = YUITest.Assert;

YUITest.TestRunner.add(new YUITest.TestCase({

name: "lowercase rule errors",

"A property that is not in lowercase should result in a warning": function() {
var result = CSSLint.verify("h1 { Border-Radius: 5px; }", { "lowercase": 1 });

Assert.areEqual(1, result.messages.length);
Assert.areEqual("warning", result.messages[0].type);
Assert.areEqual("Property is not lowercase.", result.messages[0].message);
},

"A property that is in lowercase should not result in a warning": function() {
var result = CSSLint.verify("h1 { border-radius: 5px; }", { "lowercase": 1 });

Assert.areEqual(0, result.messages.length);
},

"A function that is not in lowercase should result in a warning": function() {
var result = CSSLint.verify("h1 { color: RGB(0, 0, 0); }", { "lowercase": 1 });

Assert.areEqual(1, result.messages.length);
Assert.areEqual("warning", result.messages[0].type);
Assert.areEqual("Function is not lowercase.", result.messages[0].message);
},

"A function that is in lowercase should not result in a warning": function() {
var result = CSSLint.verify("h1 { color: rgb(0, 0, 0); }", { "lowercase": 1 });

Assert.areEqual(0, result.messages.length);
}
}));

})();