示例#1
0
    def test_converted_call_partial_of_whitelisted_function(self):
        def test_fn(_):
            self.assertFalse(converter_testing.is_inside_generated_code())

        converter_testing.whitelist(test_fn)
        api.converted_call(functools.partial(test_fn, None), (),
                           None,
                           options=DEFAULT_RECURSIVE)
示例#2
0
    def test_converted_call_whitelisted_method_via_owner(self):
        class TestClass(object):
            def method(self):
                return converter_testing.is_inside_generated_code()

        converter_testing.whitelist(TestClass)

        obj = TestClass()
        self.assertFalse(
            api.converted_call(obj.method, (), {}, options=DEFAULT_RECURSIVE))
示例#3
0
    def test_tf_convert_whitelisted_method(self):

        if six.PY2:
            self.skipTest('Test bank not comptible with Python 2.')

        class TestClass(object):
            def method(self):
                return converter_testing.is_inside_generated_code()

        converter_testing.whitelist(TestClass.method)

        obj = TestClass()
        converted_call = api.tf_convert(
            obj.method, ag_ctx.ControlStatusCtx(status=ag_ctx.Status.ENABLED))
        _, converted_target = tf_decorator.unwrap(converted_call)
        self.assertIs(converted_target.__func__, obj.method.__func__)