def test_parse_namespaces(self):
        n = Namespace()

        create_args([
            "first.second.a=blah1",
            "first.second.b=blah2",
            "first.third=blah3",
            "second.a=blah4",
            "second.b=blah5",
        ], n)

        assert_equal(n.first.second.a, 'blah1')
        assert_equal(n.first.second.b, 'blah2')
        assert_equal(n.first.third, 'blah3')
        assert_equal(n.second.a, 'blah4')
        assert_equal(n.second.b, 'blah5')

        n = Namespace()

        msg = "Conflicting assignments at namespace level 'second'"
        with assert_raises_str(ValueError, msg):
            create_args([
                "first.second.a=blah1",
                "first.second.b=blah2",
                "first.second=blah3",
            ], n)
Ejemplo n.º 2
0
    def test_parse_namespaces(self):
        n = Namespace()

        create_args(
            [
                "first.second.a=blah1",
                "first.second.b=blah2",
                "first.third=blah3",
                "second.a=blah4",
                "second.b=blah5",
            ],
            n,
        )

        assert n.first.second.a == "blah1"
        assert n.first.second.b == "blah2"
        assert n.first.third == "blah3"
        assert n.second.a == "blah4"
        assert n.second.b == "blah5"

        n = Namespace()

        msg = "Conflicting assignments at namespace level 'second'"
        with pytest.raises(ValueError, match=msg):
            create_args(
                [
                    "first.second.a=blah1",
                    "first.second.b=blah2",
                    "first.second=blah3",
                ],
                n,
            )
Ejemplo n.º 3
0
    def test_parse_namespaces(self):
        n = Namespace()

        create_args(
            [
                "first.second.a=blah1",
                "first.second.b=blah2",
                "first.third=blah3",
                "second.a=blah4",
                "second.b=blah5",
            ],
            n
        )

        assert_equal(n.first.second.a, 'blah1')
        assert_equal(n.first.second.b, 'blah2')
        assert_equal(n.first.third, 'blah3')
        assert_equal(n.second.a, 'blah4')
        assert_equal(n.second.b, 'blah5')

        n = Namespace()

        msg = "Conflicting assignments at namespace level 'second'"
        with assert_raises_str(ValueError, msg):
            create_args(
                [
                    "first.second.a=blah1",
                    "first.second.b=blah2",
                    "first.second=blah3",
                ],
                n
            )
Ejemplo n.º 4
0
def main(ctx, extension, strict_extensions, default_extension, x):
    """Top level zipline entry point."""
    # install a logbook handler before performing any other operations
    logbook.StderrHandler().push_application()
    create_args(x, zipline.extension_args)
    load_extensions(
        default_extension,
        extension,
        strict_extensions,
        os.environ,
    )
Ejemplo n.º 5
0
def main(extension, strict_extensions, default_extension, x):
    """Top level zipline entry point.
    """

    # install a logbook handler before performing any other operations
    logbook.StderrHandler().push_application()
    create_args(x, zipline.extension_args)
    load_extensions(
        default_extension,
        extension,
        strict_extensions,
        os.environ,
    )
    def test_parse_args(self):
        n = Namespace()

        arg_dict = {}

        arg_list = [
            'key=value',
            'arg1=test1',
            'arg2=test2',
            'arg_3=test3',
            '_arg_4_=test4',
        ]
        for arg in arg_list:
            parse_extension_arg(arg, arg_dict)
        assert_equal(
            arg_dict, {
                '_arg_4_': 'test4',
                'arg_3': 'test3',
                'arg2': 'test2',
                'arg1': 'test1',
                'key': 'value',
            })
        create_args(arg_list, n)
        assert_equal(n.key, 'value')
        assert_equal(n.arg1, 'test1')
        assert_equal(n.arg2, 'test2')
        assert_equal(n.arg_3, 'test3')
        assert_equal(n._arg_4_, 'test4')

        msg = ("invalid extension argument '1=test3', "
               "must be in key=value form")
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('1=test3', {})
        msg = ("invalid extension argument 'arg4 test4', "
               "must be in key=value form")
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg4 test4', {})
        msg = ("invalid extension argument 'arg5.1=test5', "
               "must be in key=value form")
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg5.1=test5', {})
        msg = ("invalid extension argument 'arg6.6arg=test6', "
               "must be in key=value form")
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg6.6arg=test6', {})
        msg = ("invalid extension argument 'arg7.-arg7=test7', "
               "must be in key=value form")
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg7.-arg7=test7', {})
Ejemplo n.º 7
0
    def test_parse_args(self):
        n = Namespace()

        arg_dict = {}

        arg_list = [
            "key=value",
            "arg1=test1",
            "arg2=test2",
            "arg_3=test3",
            "_arg_4_=test4",
        ]
        for arg in arg_list:
            parse_extension_arg(arg, arg_dict)
        assert_equal(
            arg_dict,
            {
                "_arg_4_": "test4",
                "arg_3": "test3",
                "arg2": "test2",
                "arg1": "test1",
                "key": "value",
            },
        )
        create_args(arg_list, n)
        assert n.key == "value"
        assert n.arg1 == "test1"
        assert n.arg2 == "test2"
        assert n.arg_3 == "test3"
        assert n._arg_4_ == "test4"

        msg = "invalid extension argument '1=test3', " "must be in key=value form"
        with pytest.raises(ValueError, match=msg):
            parse_extension_arg("1=test3", {})
        msg = "invalid extension argument 'arg4 test4', " "must be in key=value form"
        with pytest.raises(ValueError, match=msg):
            parse_extension_arg("arg4 test4", {})
        msg = "invalid extension argument 'arg5.1=test5', " "must be in key=value form"
        with pytest.raises(ValueError, match=msg):
            parse_extension_arg("arg5.1=test5", {})
        msg = ("invalid extension argument 'arg6.6arg=test6', "
               "must be in key=value form")
        with pytest.raises(ValueError, match=msg):
            parse_extension_arg("arg6.6arg=test6", {})
        msg = ("invalid extension argument 'arg7.-arg7=test7', "
               "must be in key=value form")
        with pytest.raises(ValueError, match=msg):
            parse_extension_arg("arg7.-arg7=test7", {})
Ejemplo n.º 8
0
    def test_parse_args(self):
        n = Namespace()

        arg_dict = {}

        arg_list = [
            'key=value',
            'arg1=test1',
            'arg2=test2',
            'arg_3=test3',
            '_arg_4_=test4',
        ]
        for arg in arg_list:
            parse_extension_arg(arg, arg_dict)
        assert_equal(
            arg_dict,
            {
                '_arg_4_': 'test4',
                'arg_3': 'test3',
                'arg2': 'test2',
                'arg1': 'test1',
                'key': 'value',
            }
        )
        create_args(arg_list, n)
        assert_equal(n.key, 'value')
        assert_equal(n.arg1, 'test1')
        assert_equal(n.arg2, 'test2')
        assert_equal(n.arg_3, 'test3')
        assert_equal(n._arg_4_, 'test4')

        msg = (
            "invalid extension argument '1=test3', "
            "must be in key=value form"
        )
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('1=test3', {})
        msg = (
            "invalid extension argument 'arg4 test4', "
            "must be in key=value form"
        )
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg4 test4', {})
        msg = (
            "invalid extension argument 'arg5.1=test5', "
            "must be in key=value form"
        )
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg5.1=test5', {})
        msg = (
            "invalid extension argument 'arg6.6arg=test6', "
            "must be in key=value form"
        )
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg6.6arg=test6', {})
        msg = (
            "invalid extension argument 'arg7.-arg7=test7', "
            "must be in key=value form"
        )
        with assert_raises_str(ValueError, msg):
            parse_extension_arg('arg7.-arg7=test7', {})