Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(279)

Unified Diff: third_party/WebKit/Source/devtools/scripts/jsdoc-validator/tests/function.js

Issue 2464463002: Revert of DevTools: clean up scripts folder (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/scripts/jsdoc-validator/tests/function.js
diff --git a/third_party/WebKit/Source/devtools/scripts/jsdoc-validator/tests/function.js b/third_party/WebKit/Source/devtools/scripts/jsdoc-validator/tests/function.js
new file mode 100644
index 0000000000000000000000000000000000000000..1343675cc065c6094c85633b1a00bc60273271d6
--- /dev/null
+++ b/third_party/WebKit/Source/devtools/scripts/jsdoc-validator/tests/function.js
@@ -0,0 +1,380 @@
+function badFuncNoAnnotation() {
+ return 1; // ERROR - no @return annotation.
+}
+
+/**
+ * @return {number}
+ */
+function badFuncAnnotatedButNoReturn() // ERROR - no @return annotation.
+{
+}
+
+/**
+ * @return {number}
+ */
+function badFuncAnnotatedButNoReturnValue() // ERROR - no returned value.
+{
+ return;
+}
+
+/**
+ * @return {number}
+ */
+function goodFunc() // OK - annotated @return.
+{
+ return 1;
+}
+
+/**
+ * @returns {number}
+ */
+function badReturnsShouldBeReturnFunc() // ERROR - @returns, should be @return.
+{
+ return 1;
+}
+
+/**
+ * @return number
+ */
+function badReturnShouldBeTypedFunc() // ERROR - number, not {number}.
+{
+ return 1;
+}
+
+/**
+ * @param number foo
+ * @param bar
+ */
+function badParamAnnotationsFunc(foo, bar) // ERROR - @param's should be well-formed
+{
+ return 1;
+}
+
+
+/**
+ * @returns {number}
+ */
+function badReturnsShouldBeReturnNoValueFunc() // ERROR - @returns, should be @return.
+{
+ return;
+}
+
+/**
+ * @returns {number}
+ */
+function badReturnsShouldBeAbsentFunc() // ERROR - @returns, should be absent.
+{
+}
+
+/**
+ * @constructor
+ */
+function TypeOne() {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+}
+
+TypeOne.prototype = {
+ badApiMethodNoAnnotation: function() // ERROR - public method.
+ {
+ return 1;
+ },
+
+ _privateMethod: function() // OK - non-public method.
+ {
+ var obj = {};
+
+ /**
+ * @constructor
+ * @param {number} val
+ */
+ obj["a"] = obj["b"] = function(val) { // OK - constructor
+ this.foo = val;
+ }
+
+ /**
+ * @param {number} val
+ */
+ obj["c"] = obj["d"] = function(val) { // ERROR - no @this
+ this.foo = val;
+ }
+
+ return 1;
+ },
+
+ methodTwo: function()
+ {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+ },
+
+ /**
+ * @return {number}
+ */
+ methodThatThrows: function() // OK - throws and should be overridden in subclasses.
+ {
+ throw "Not implemented";
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturnValue: function() // ERROR - does not return value.
+ {
+ return;
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturn: function() // ERROR - does not return.
+ {
+ var foo = 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeReturn: function() // ERROR - @returns, should be @return
+ {
+ return 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsentToo: function() // ERROR - @returns, should be absent
+ {
+ return;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsent: function() // ERROR - @returns, should be absent
+ {
+ var foo = 1;
+ }
+}
+
+
+/**
+ * @constructor
+ */
+TypeTwo = function() {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+}
+
+TypeTwo.prototype = {
+ badApiMethodNoAnnotation: function() // ERROR - public method.
+ {
+ return 1;
+ },
+
+ _privateMethod: function() // OK - non-public method.
+ {
+ return 1;
+ },
+
+ methodTwo: function()
+ {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturnValue: function() // ERROR - does not return value.
+ {
+ return;
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturn: function() // ERROR - does not return.
+ {
+ var foo = 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeReturn: function() // ERROR - @returns, should be @return
+ {
+ return 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsentToo: function() // ERROR - @returns, should be absent
+ {
+ return;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsent: function() // ERROR - @returns, should be absent
+ {
+ var foo = 1;
+ }
+}
+
+/**
+ * @interface
+ */
+Interface = function() {}
+
+Interface.prototype = {
+ /**
+ * @return {number}
+ */
+ interfaceMethod: function() {}, // OK - interface method.
+
+ /**
+ * @returns {number}
+ */
+ badReturnsInterfaceMethod: function() {} // ERROR - @returns instead of return.
+}
+
+/**
+ * @return {!Object}
+ */
+function returnConstructedObject() {
+
+/**
+ * @constructor
+ */
+TypeThree = function() {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+}
+
+TypeThree.prototype = {
+ badApiMethodNoAnnotation: function() // ERROR - public method.
+ {
+ return 1;
+ },
+
+ _privateMethod: function() // OK - non-public method.
+ {
+ return 1;
+ },
+
+ methodTwo: function()
+ {
+ function callback() // OK - not a method.
+ {
+ return 1;
+ }
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturnValue: function() // ERROR - does not return value.
+ {
+ return;
+ },
+
+ /**
+ * @return {number}
+ */
+ badMethodDoesNotReturn: function() // ERROR - does not return.
+ {
+ var foo = 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeReturn: function() // ERROR - @returns, should be @return
+ {
+ return 1;
+ },
+
+ /**
+ * @returns number
+ */
+ badMethodReturnShouldBeTyped: function() // ERROR - number, not {number}
+ {
+ return 1;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsentToo: function() // ERROR - @returns, should be absent
+ {
+ return;
+ },
+
+ /**
+ * @returns {number}
+ */
+ badMethodReturnsShouldBeAbsent: function() // ERROR - @returns, should be absent
+ {
+ var foo = 1;
+ },
+
+ /**
+ * @param number foo
+ * @param bar
+ */
+ badMethodParamAnnotations: function(foo, bar) // ERROR - @param's should be well-formed
+ {
+ return 1;
+ }
+}
+
+return new TypeThree();
+}
+
+
+/**
+ * @param {string} a
+ * @param {string} b
+ * @param {string} c
+ */
+function funcParamsOK1(a, b, c) {}
+
+function funcParamsOK2(a, b, c) {}
+
+/**
+ * @param {string} a
+ * @param {string} c
+ */
+function funcParamsMissingTag1(a, b, c) {}
+
+/**
+ * @param {string} a
+ */
+function funcParamsMissingTag2(a, b, c) {}
+
+/**
+ * @interface
+ */
+function FuncInterface()
+{
+}
+
+FuncInterface.prototype = {
+ /**
+ * @return {number}
+ */
+ returnNumber: function() { }
+}

Powered by Google App Engine
This is Rietveld 408576698