Пример #1
0
    def test_dynamic_parser2(self):
        parser = Parser(add_default=False)
        builtin = Builtin()
        kw_list = [
            "START", "RUNSPEC", "FIELD", "REGIONS", "DIMENS", "GRID", "DX",
            "DY", "DZ", "TOPS", "OPERNUM", "FIPNUM"
        ]
        for kw in kw_list:
            parser.add_keyword(builtin[kw])

        deck = parser.parse_string(self.REGIONDATA)
Пример #2
0
    def test_parser_extension(self):
        error_recovery = [("PARSE_RANDOM_SLASH", opm.io.action.ignore)]

        parse_context = ParseContext(error_recovery)
        parser = Parser()
        for kw in self.KEYWORDS:
            parser.add_keyword(json.dumps(kw))

        deck = parser.parse_string(self.DECK_ADDITIONAL_KEYWORDS,
                                   parse_context)

        self.assertIn('TESTKEY0', deck)
        self.assertIn('TESTKEY1', deck)
        self.assertIn('TESTKEY2', deck)
Пример #3
0
    def test_dynamic_parser(self):
        parser = Parser(add_default=False)
        builtin = Builtin()
        parser.add_keyword(builtin.START)
        parser.add_keyword(builtin.RUNSPEC)
        parser.add_keyword(builtin.FIELD)
        parser.add_keyword(builtin.DIMENS)
        parser.add_keyword(builtin.GRID)
        parser.add_keyword(builtin.DX)
        parser.add_keyword(builtin.DY)
        parser.add_keyword(builtin.DZ)
        parser.add_keyword(builtin.TOPS)
        parser.add_keyword(builtin.REGIONS)
        parser.add_keyword(builtin.OPERNUM)
        parser.add_keyword(builtin.FIPNUM)

        deck = parser.parse_string(self.REGIONDATA)