   [path]
   (-> path read-project-clj :clr some?))
 
+(defn ring-project-map?
+  [project]
+  (let [{:keys [ring main]} project]
+    (and (some? ring) (nil? main))))
+
 (defn ring-project?
   [path]
-  (let [{:keys [ring main]} (read-project-clj path)]
-    (and (some? ring) (nil? main))))
+  (-> path read-project-clj ring-project-map?))
 
 (defn valid-project?
   [path]
-  (and (not (ios-project? path))
-       (or (not (android-project? path))
-           (not (sandbox/get-dir)))))
+  (not (and (sandbox/get-dir)
+            (android-project? path))))
 
 ; start/stop thread/processes
 

(defn clean-project-task
  [path project]
  (cond
    (clr-project? path)
    (leiningen.clr/clr project "clean")
    :else
    (leiningen.clean/clean project)))

                             (if (:cljsbuild project) "check-cljs" "check"))
      (catch Exception _)))
  (cond
    (:clr project)
    (leiningen.clr/clr project "test")
    :else
    (leiningen.test/test project)))
