Skip to content

Commit

Permalink
[#833] use resolved-as in missing docstring linter
Browse files Browse the repository at this point in the history
  • Loading branch information
borkdude committed Apr 2, 2020
1 parent c5afb77 commit 80f0160
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 10 deletions.
4 changes: 3 additions & 1 deletion src/clj_kondo/impl/analyzer.clj
Original file line number Diff line number Diff line change
Expand Up @@ -1251,7 +1251,9 @@
[cljs.test deftest]
#_[:clj-kondo/unknown-namespace deftest])
(do (lint-inline-def! ctx expr)
(test/analyze-deftest ctx resolved-namespace expr))
(test/analyze-deftest ctx expr
resolved-namespace resolved-name
resolved-as-namespace resolved-as-name))
[clojure.string replace]
(analyze-clojure-string-replace ctx expr)
[cljs.test async]
Expand Down
8 changes: 5 additions & 3 deletions src/clj_kondo/impl/analyzer/test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
[clj-kondo.impl.analyzer.common :as common]
[clj-kondo.impl.utils :as utils]))

(defn analyze-deftest [ctx deftest-ns expr]
(defn analyze-deftest [ctx expr resolved-ns resolved-name resolved-as-ns resolved-as-name]
(common/analyze-defn
ctx
(-> expr
Expand All @@ -13,8 +13,10 @@
(fn [[_ name-expr & body]]
(list*
(utils/token-node 'clojure.core/defn)
(when name-expr (vary-meta name-expr assoc
:defined-by (symbol (str deftest-ns) "deftest")
(when name-expr (vary-meta name-expr
assoc
:linted-as (symbol (str resolved-as-ns) (str resolved-as-name))
:defined-by (symbol (str resolved-ns) (str resolved-name))
:test true))
(utils/vector-node [])
body))))))
Expand Down
12 changes: 6 additions & 6 deletions src/clj_kondo/impl/namespace.clj
Original file line number Diff line number Diff line change
Expand Up @@ -150,13 +150,13 @@
(not (:test metadata))
(not temp?)
(not
(when-let [defined-by (:defined-by metadata)]
(when-let [linted-as (:linted-as metadata)]
(or
(= 'clojure.test/deftest defined-by)
(= 'clojure.core/deftype defined-by)
(= 'clojure.core/defrecord defined-by)
(= 'clojure.core/defprotocol defined-by)
(= 'clojure.core/definterface defined-by)))))
(= 'clojure.test/deftest linted-as)
(= 'clojure.core/deftype linted-as)
(= 'clojure.core/defrecord linted-as)
(= 'clojure.core/defprotocol linted-as)
(= 'clojure.core/definterface linted-as)))))
(findings/reg-finding!
ctx
(node->line filename
Expand Down

0 comments on commit 80f0160

Please sign in to comment.