--- /dev/null
+USING: accessors assocs compiler.cfg.dataflow-analysis
+compiler.cfg.dataflow-analysis.private compiler.cfg.rpo compiler.cfg.utilities
+kernel tools.test ;
+IN: compiler.cfg.dataflow-analysis.tests
+
+! run-dataflow-analysis
+TUPLE: im-a-dfa test ;
+
+M: im-a-dfa block-order ( cfg dfa -- bbs )
+ drop post-order ;
+
+M: im-a-dfa ignore-block? ( cfg bb -- ? )
+ 2drop f ;
+
+M: im-a-dfa predecessors ( bb dfa -- seq )
+ drop predecessors>> ;
+
+M: im-a-dfa successors ( bb dfa -- seq )
+ drop successors>> ;
+
+M: im-a-dfa join-sets ( sets bb dfa -- set )
+ 2drop ;
+
+M: im-a-dfa transfer-set ( in-set bb dfa -- out-set )
+ 2drop ;
+
+{ { V{ } } { V{ } } } [
+ { } 0 insns>block block>cfg 10 im-a-dfa boa run-dataflow-analysis
+ [ values ] bi@
+] unit-test