   (checking
    "It joins the :flow/to tasks together and limits selection"
    (times 50)
-   [flow-conditions (gen/vector (->> :a
-                         (flow-condition-gen)
-                         (flow-to-tasks-gen)
-                         (true-flow-condition-gen)))
+   [flow-conditions
+    (gen/not-empty
+     (gen/vector (->> :a
+                      (flow-condition-gen)
+                      (flow-to-tasks-gen)
+                      (true-flow-condition-gen))))
     other-downstream-tasks (gen/vector gen/keyword)]
    (let [compiled (c/compile-fc-norms flow-conditions :a)
          target-tasks (mapcat :flow/to flow-conditions)
          downstream (into other-downstream-tasks target-tasks)
          event {:onyx.core/compiled-norm-fcs compiled}
          results (t/route-data event nil nil flow-conditions downstream)]
-     (is (= (into #{} target-tasks) (:flow results)))
+     (is (= (into #{} target-tasks) (into #{} (:flow results))))
      (is (nil? (:action results))))))
 
 (deftest no-false-predicate-picks

         results (t/route-data event nil nil flow-conditions downstream)]
     (is (= (into #{} (:flow/to (first true-1))) (into #{} (:flow results))))
     (is (nil? (:action results))))))

    (gen/vector (->> :a
                     (flow-condition-gen)
                     (flow-to-tasks-gen)
                     (maybe-predicate)))]
   (let [flow-conditions (into (into (into false-1 true-1) false-1) mixed-1)
         downstream (mapcat :flow/to flow-conditions)
         compiled (c/compile-fc-norms flow-conditions :a)
