mpenning / ciscoconfparse

Parse, Audit, Query, Build, and Modify Arista / Cisco / Juniper / Palo Alto / F5 configurations.
http://www.pennington.net/py/ciscoconfparse/
GNU General Public License v3.0
799 stars 220 forks source link

class CiscoConfParse has mutually exclusive parameters, factory = False, ignore_blank_lines = True #295

Closed vladimirs-git closed 12 months ago

vladimirs-git commented 12 months ago

In the ciscoconfparse-1.9.48 class CiscoConfParse has mutually exclusive parameters: factory = False ignore_blank_lines = True

As result a logging message As of version 1.9.17 and later, ignore_blank_lines=True is only honored when factory=True is raised. From my perspective, default parameters could be adjusted, to keep the logging messages silent.

mpenning commented 12 months ago

19 tests fail if I make ignore_blank_lines=False by default. factory will always default False.

I adjusted the log message to only emit when factory=True. FYI, recent version 1.9.x code has drastically reduced extraneous logging before this Github Issue was raised.

======================================================= short test summary info =======================================================
FAILED test_CiscoConfParse.py::testParse_valid_filepath_01 - AssertionError: assert 453 == 450
FAILED test_CiscoConfParse.py::testParse_valid_filepath_02 - AssertionError: assert 453 == 450
FAILED test_CiscoConfParse.py::testParse_valid_filepath_03 - AssertionError: assert 21 == 16
FAILED test_CiscoConfParse.py::testParse_valid_filepath_04 - AssertionError: assert 21 == 16
FAILED test_CiscoConfParse.py::testParse_valid_filepath_05 - AssertionError: assert 117 == 79
FAILED test_CiscoConfParse.py::testParse_valid_filepath_06 - AssertionError: assert 117 == 79
FAILED test_CiscoConfParse.py::testParse_syntax_ios_nofactory_01 - AssertionError: assert 453 == 450
FAILED test_CiscoConfParse.py::testParse_syntax_ios_factory_01 - AssertionError: assert 453 == 451
FAILED test_CiscoConfParse.py::testParse_syntax_nxos_nofactory_01 - AssertionError: assert 999 == 998
FAILED test_CiscoConfParse.py::testParse_syntax_nxos_factory_01 - AssertionError: assert 999 == 998
FAILED test_CiscoConfParse.py::testParse_syntax_iosxr_nofactory_01 - AssertionError: assert 477 == 468
FAILED test_CiscoConfParse.py::testParse_syntax_iosxr_factory_01 - AssertionError: assert 477 == 476
FAILED test_CiscoConfParse.py::testParse_syntax_asa_nofactory_01 - AssertionError: assert 424 == 422
FAILED test_CiscoConfParse.py::testParse_syntax_asa_factory_01 - AssertionError: assert 424 == 422
FAILED test_CiscoConfParse.py::testParse_parse_syntax_f5_as_junos_nofactory_ioscfg_01 - AssertionError: assert ['ltm virtual...rofiles', ...] == ['ltm virtual...rofiles', ...]
FAILED test_CiscoConfParse.py::testParse_parse_syntax_junos_as_junos_nofactory_ioscfg_01 - AssertionError: assert ['## Last com...ocation', ...] == ['## Last com...ocation', ...]
FAILED test_CiscoConfParse.py::testParse_f5_as_ios_02 - AssertionError: assert 68 == 67
FAILED test_CiscoConfParse.py::testParse_f5_as_junos - AssertionError: assert 20 == 16
FAILED test_Models_Junos.py::testVal_JunosIntfLine_dna - AssertionError: assert 111 == 76
=================================== 19 failed, 448 passed, 1 skipped, 1 xfailed, 1 warning in 1.63s ===================================