def test_tag_numbers(self):

        tag_list = sw.get_all_tags_from_html(self.html_string)
        count_summary = sw.get_count_of_each_tag(tag_list)
        assert count_summary['html'] == 1
        assert count_summary['body'] == 1
        assert count_summary['li'] == 3
    return trie

def get_nested_default(d, path):
    return reduce(lambda d, k: d.setdefault(k, {}), path, d)
def set_nested(d, path, value):
    get_nested_default(d, path[:-1])[path[-1]]['count'] = value



def in_trie(trie, word):
    if type(word) != str:
        raise TypeError("Trie only works on str!")
    keys=[]
    temp_trie = trie
    for letter in word:
        if letter not in temp_trie:
            return None
        temp_trie = temp_trie[letter]
        keys.append(letter)
    return keys
 

 
if __name__ == '__main__':
    url = 'http://python.org/'
    html_content = sw.get_html_content(url)
    complete_tag_list = sw.get_all_tags_from_html(html_content )
    trie = make_trie(*complete_tag_list)
    print_tags(trie )