def test_reachable_reference_by_process(self):
        ast = self.create_ast(Fixtures.DECLARING_AND_REFERENCING)

        ref_id_node = ast['body'][1]['left']['left']

        tester = ReferenceReachabilityTester()
        tester.process(ast)

        self.assertTrue(is_reachable_reference_identifier(ref_id_node))
    def test_unreachable_reference_by_process(self):
        ast = self.create_ast(Fixtures.MISS_DECLARATION)

        ref_id_node = ast['body'][1]['left']['left']

        tester = ReferenceReachabilityTester()
        tester.process(ast)

        self.assertFalse(is_reachable_reference_identifier(ref_id_node))
    def test_builtin_reference_by_process(self):
        ast = self.create_ast(Fixtures.BUILTIN)

        ref_id_node = ast['body'][0]['left']['left']

        tester = ReferenceReachabilityTester()
        tester.process(ast)

        self.assertTrue(is_reachable_reference_identifier(ref_id_node))