mirror of
https://github.com/donnemartin/interactive-coding-challenges
synced 2026-01-08 10:28:03 +00:00
@@ -79,9 +79,7 @@
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {
|
||||
"collapsed": false
|
||||
},
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"class Item(object):\n",
|
||||
@@ -133,16 +131,14 @@
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {
|
||||
"collapsed": false
|
||||
},
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"# %load test_hash_map.py\n",
|
||||
"from nose.tools import assert_equal, assert_raises\n",
|
||||
"import unittest\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"class TestHashMap(object):\n",
|
||||
"class TestHashMap(unittest.TestCase):\n",
|
||||
"\n",
|
||||
" # TODO: It would be better if we had unit tests for each\n",
|
||||
" # method in addition to the following end-to-end test\n",
|
||||
@@ -150,31 +146,31 @@
|
||||
" hash_table = HashTable(10)\n",
|
||||
"\n",
|
||||
" print(\"Test: get on an empty hash table index\")\n",
|
||||
" assert_raises(KeyError, hash_table.get, 0)\n",
|
||||
" self.assertRaises(KeyError, hash_table.get, 0)\n",
|
||||
"\n",
|
||||
" print(\"Test: set on an empty hash table index\")\n",
|
||||
" hash_table.set(0, 'foo')\n",
|
||||
" assert_equal(hash_table.get(0), 'foo')\n",
|
||||
" self.assertEqual(hash_table.get(0), 'foo')\n",
|
||||
" hash_table.set(1, 'bar')\n",
|
||||
" assert_equal(hash_table.get(1), 'bar')\n",
|
||||
" self.assertEqual(hash_table.get(1), 'bar')\n",
|
||||
"\n",
|
||||
" print(\"Test: set on a non empty hash table index\")\n",
|
||||
" hash_table.set(10, 'foo2')\n",
|
||||
" assert_equal(hash_table.get(0), 'foo')\n",
|
||||
" assert_equal(hash_table.get(10), 'foo2')\n",
|
||||
" self.assertEqual(hash_table.get(0), 'foo')\n",
|
||||
" self.assertEqual(hash_table.get(10), 'foo2')\n",
|
||||
"\n",
|
||||
" print(\"Test: set on a key that already exists\")\n",
|
||||
" hash_table.set(10, 'foo3')\n",
|
||||
" assert_equal(hash_table.get(0), 'foo')\n",
|
||||
" assert_equal(hash_table.get(10), 'foo3')\n",
|
||||
" self.assertEqual(hash_table.get(0), 'foo')\n",
|
||||
" self.assertEqual(hash_table.get(10), 'foo3')\n",
|
||||
"\n",
|
||||
" print(\"Test: remove on a key that already exists\")\n",
|
||||
" hash_table.remove(10)\n",
|
||||
" assert_equal(hash_table.get(0), 'foo')\n",
|
||||
" assert_raises(KeyError, hash_table.get, 10)\n",
|
||||
" self.assertEqual(hash_table.get(0), 'foo')\n",
|
||||
" self.assertRaises(KeyError, hash_table.get, 10)\n",
|
||||
"\n",
|
||||
" print(\"Test: remove on a key that doesn't exist\")\n",
|
||||
" assert_raises(KeyError, hash_table.remove, -1)\n",
|
||||
" self.assertRaises(KeyError, hash_table.remove, -1)\n",
|
||||
"\n",
|
||||
" print('Success: test_end_to_end')\n",
|
||||
"\n",
|
||||
@@ -214,9 +210,9 @@
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.5.0"
|
||||
"version": "3.7.2"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 0
|
||||
"nbformat_minor": 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user