Ben Kurtovic
ee99e6eceb
Fix a bug in Wikicode.set(); implement test_set() and test_index()
před 11 roky
Ben Kurtovic
852c5ff9af
Start TestWikicode; make Wikicode.nodes's setter handle more inputs.
před 11 roky
Ben Kurtovic
81849013bc
Finishing tests for Templates; some fixes.
před 11 roky
Ben Kurtovic
2ca3b2805e
Implement 'before' parameter for Template.add() ( closes #21 )
před 11 roky
Ben Kurtovic
b46c98b012
Clean up template.add(); add a before param but do not implement yet.
před 11 roky
Ben Kurtovic
786d619274
Drop force_no_field in template.remove(); implement test_remove().
- Also add tests for spacing in param names.
před 11 roky
Ben Kurtovic
debcb6577e
Fix recursion issues by giving up at a certain point ( closes #16 ).
- Stop parsing new templates if the template depth gets above
MAX_DEPTH (40) or if we've already tried to parse over MAX_CYCLES
(100,000) templates.
- Add two tests to ensure recursion works somewhat correctly.
- Fix parsing the string "{{" with the Python tokenizer; add a test.
před 11 roky
Ben Kurtovic
6a385b3921
TestParameter and a fair chunk of TestTemplate.
před 11 roky
Ben Kurtovic
6bf8cfd2ad
Fix tests for Python 3.
před 11 roky
Ben Kurtovic
8db40689ed
Improve a few things about nodes; simply a method in Wikicode.
před 11 roky
Ben Kurtovic
404b4479a2
Implement the remaining asserts in TreeEqualityTestCase.
před 11 roky
Ben Kurtovic
1b69b5e882
Moving compat stuff exclusively for unit tests to its own file.
před 11 roky
Ben Kurtovic
32ac6958e1
Apply some bugfixes to SmartList to fix tests on Python 3.
- Add a _SliceNormalizerMixIn to properly handle slices.
- Use floor division when applying key.step.
- Implement sort() without 'cmp' parameter.
- Fix bytes(list) behavior.
- Children of _ListProxies are now _ListProxies, not regular lists.
před 11 roky
Ben Kurtovic
7f87a1c4b3
Apply bugfixes so that some tests pass on Python 3.
- Skip CTokenizer tests if CTokenizer is not available.
- TestStringMixin: Don't make assumptions about default encoding.
- Add urllib stuff to mwparserfromhell.compat.
- Fix compat.py's line endings.
- gen.next() -> next(gen)
- assert*Equals() -> assert*Equal()
před 11 roky
Ben Kurtovic
f803269514
Add a USES_C field to the tokenizers; add TestParser.test_use_c()
před 11 roky
Ben Kurtovic
6a741db7ce
Applying fb71f5507e
před 11 roky
Ben Kurtovic
34b85a93cd
Cosmetic change: standardize whitespace after class definition.
před 11 roky
Ben Kurtovic
b298a68b37
Squash a bug dealing with extended slices.
před 11 roky
Ben Kurtovic
740db6ddfa
Implement some more tests; squash bugs in SmartList/_ListProxy
před 11 roky
Ben Kurtovic
49b9863b77
Handle keyword arguments in some methods with py3k correctly.
před 11 roky
Ben Kurtovic
d85ff73c19
Squashing some sneaky bugs in SmartLists's children.
před 11 roky
Ben Kurtovic
fb92349909
Fix parsing of arguments in SmartList.sort()
před 11 roky
Ben Kurtovic
10a7e5d241
Fix the same bug in __setitem__ and __delitem__
před 11 roky
Ben Kurtovic
65c3950e89
Fix bug when an extended slice's stop argument is missing.
před 11 roky
Ben Kurtovic
ff51d7f5e5
Some tests for SmartLists; __reversed__ in StringMixIn
před 11 roky
Ben Kurtovic
fe3328aa38
test_doctest()
před 11 roky
Ben Kurtovic
b9d2a83b8a
Starting TestSmartList.
před 11 roky
Ben Kurtovic
cf14b5ef4e
Add some missing methods to StringMixIn.
před 11 roky
Ben Kurtovic
6704bcd662
Document the remaining universal methods.
Still need to do some py3k-only ones.
před 11 roky
Ben Kurtovic
d8814968b7
Applying latest commit from develop
před 11 roky
Ben Kurtovic
fb71f5507e
Support a 'use_c' field to explicitly disable the C tokenizer.
před 11 roky
Ben Kurtovic
054a84afe0
A bit of misc cleanup.
před 11 roky
Ben Kurtovic
718fcb24c8
Fix eight failing tests; all template parsing tests now passing ( #25 ).
před 11 roky
Ben Kurtovic
5a0a00ba98
Change the way verify_safe() handles template params ( #25 ).
- Newlines are now allowed in template param names.
- Changes also affect handling of arguments like {{{foo}}}.
- Update unit tests: remove some unnecessary ones, and add some to cover the changes.
- Update StringMixIn tests to actually work for some of the methods.
- Update copyright notices for the C extensions.
před 11 roky
Ben Kurtovic
9a87329d69
More tests for test_other_methods()
před 11 roky
Ben Kurtovic
6e748004d1
test_types(), test_other_magics(); add range to compat
před 11 roky
Ben Kurtovic
221af8a9d7
Adding some tests to TestStringMixIn
před 11 roky
Ben Kurtovic
0803417901
Port CTokenizer's verify_safe method to Python to solve a failing test.
před 11 roky
Ben Kurtovic
acb7e57904
Make mwparserfromhell.parser() be an alias for parse_anything().
Some other changes, including removal of the 'string' import in the tokenizer.
před 11 roky
Ben Kurtovic
28b124a96c
Restarting work on unit tests with a test covering doc examples.
před 11 roky
Ben Kurtovic
357e421fe8
Text nodes should now appear a bit better in tree form.
před 11 roky
Ben Kurtovic
d6f2723a06
Fix safety checks on template params in some odd cases ( closes #24 ).
Also, fix parsing of wikilinks in both tokenizers such that newlines
in any location within the title are an automatic failure.
před 11 roky
Ben Kurtovic
0ee505b5a5
Docstrings for new tokenizer methods.
před 11 roky
Ben Kurtovic
cd5cc6a7d0
Update copyright notices for 2013.
před 11 roky
Ben Kurtovic
11cf5def75
Fix handling of sections headers with equal signs ( closes #20 )
před 11 roky
Ben Kurtovic
6ea618460f
_get_tag_type_from_stack() makes more sense now
před 11 roky
Ben Kurtovic
6881caf0bd
Fix StringMixIn's methods taking option arguments (thanks Sigma).
před 11 roky
Ben Kurtovic
eed7c918bf
Implement padding support for Tags completely; open_padding->padding.
před 11 roky
Ben Kurtovic
a58c480639
Fix some usage of attrs; shorten a context, fix some behavior I broke.
před 11 roky
Ben Kurtovic
146d1fd006
Fix a bug in rendering Tags; attrs->attributes; update documentation.
před 11 roky