     },
     "outputs": [],
     "source": [
      "def bfs(self, visit_func):\n",
      "    # TODO: Implement me"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
 
</s> remove     "%run ../utils/captured_output.py"
 </s> add     "%run ../utils/results.py" </s> remove     "%run ../utils/captured_output.py"
 </s> add     "%run ../utils/results.py" </s> remove     "from __future__ import print_function\n",
 </s> add  </s> remove     "\n",
    "        with captured_output() as (out, err):\n",
    "            bfs(node, sys.stdout.write)\n",
    "            assert_equal(out.getvalue().strip(), '52813')\n",
 </s> add     "        bfs(node, self.results.add_result)\n",
    "        assert_equal(str(self.results), '[5, 2, 8, 1, 3]')\n", </s> remove     "        with captured_output() as (out, err):\n",
    "            root.bfs(sys.stdout.write)\n",
    "            assert_equal(out.getvalue().strip(), '52813')\n",
 </s> add     "    def test_bfs(self):\n",
    "        node = Node(5)\n",
    "        insert(node, 2)\n",
    "        insert(node, 8)\n",
    "        insert(node, 1)\n",
    "        insert(node, 3)\n",
    "        bfs(node, self.results.add_result)\n",
    "        assert_equal(str(self.results), '[5, 2, 8, 1, 3]')\n",
    "    # TODO: Implement me\n",
    "    pass"
     },
     "outputs": [],
     "source": [
      "def bfs(self, visit_func):\n",
    "    # TODO: Implement me\n",
    "    pass"
     ]
    },
    {
     "cell_type": "markdown",
     "metadata": {},
keep keep keep keep replace keep keep keep keep keep
 Reworked tree bfs unit tests. 
graphs_trees/tree_bfs/bfs_challenge.ipynb