Mercurial > hgrepos > Python > libs > ConfigMix
comparison tests/test.py @ 705:0485a033c95d
FIX: Parsing a filter chain for the new filter-only expansions: parse them backwards and use "," as filter-chain separator here.
This allows using filter chains in filter-only expansions also.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Tue, 15 Aug 2023 09:34:49 +0200 |
| parents | 193a616e0b3c |
| children | e692216f8756 |
comparison
equal
deleted
inserted
replaced
| 704:457ef358c1a0 | 705:0485a033c95d |
|---|---|
| 2209 | 2209 |
| 2210 def test_split_ns_quoting(self): | 2210 def test_split_ns_quoting(self): |
| 2211 self.assertEqual((u":", u"%x3a"), self.split_ns(u"%x3a:%x3a")) | 2211 self.assertEqual((u":", u"%x3a"), self.split_ns(u"%x3a:%x3a")) |
| 2212 | 2212 |
| 2213 def test_split_filters_empty(self): | 2213 def test_split_filters_empty(self): |
| 2214 self.assertEqual((u"", []), self.split_filters(u"")) | 2214 self.assertEqual((u"", []), self.split_filters(u"", 1)) |
| 2215 | 2215 |
| 2216 def test_split_filters_varname_only_no_stripping(self): | 2216 def test_split_filters_varname_only_no_stripping(self): |
| 2217 self.assertEqual((u" varname ", []), self.split_filters(u" varname ")) | 2217 self.assertEqual((u" varname ", []), |
| 2218 self.split_filters(u" varname ", 1)) | |
| 2218 | 2219 |
| 2219 def test_split_filters_single_no_stripping(self): | 2220 def test_split_filters_single_no_stripping(self): |
| 2220 self.assertEqual((u" the-varname ", []), | 2221 self.assertEqual((u" the-varname ", []), |
| 2221 self.split_filters(u" the-varname | ")) | 2222 self.split_filters(u" the-varname | ", 1)) |
| 2222 | 2223 |
| 2223 def test_split_filters_one(self): | 2224 def test_split_filters_one(self): |
| 2224 self.assertEqual((u"the-varname", [u"None"]), | 2225 self.assertEqual((u"the-varname", [u"None"]), |
| 2225 self.split_filters(u"the-varname|None")) | 2226 self.split_filters(u"the-varname|None", 1)) |
| 2226 | 2227 |
| 2227 def test_split_filters_many(self): | 2228 def test_split_filters_many(self): |
| 2228 self.assertEqual((u"the-varname", [u"Empty", u"None"]), | 2229 self.assertEqual((u"the-varname", [u"Empty", u"None"]), |
| 2229 self.split_filters(u"the-varname|Empty|None")) | 2230 self.split_filters(u"the-varname|Empty|None", 1)) |
| 2230 | 2231 |
| 2231 def test_None_filter_single(self): | 2232 def test_None_filter_single(self): |
| 2232 cfg = configmix.load() | 2233 cfg = configmix.load() |
| 2233 x = getattr(cfg, self.interpolate_meth)(u"{{non-existing|None}}") | 2234 x = getattr(cfg, self.interpolate_meth)(u"{{non-existing|None}}") |
| 2234 self.assertIsNone(x) | 2235 self.assertIsNone(x) |
| 2419 def test_global_filter_empty(self): | 2420 def test_global_filter_empty(self): |
| 2420 cfg = configmix.load() | 2421 cfg = configmix.load() |
| 2421 y = getattr(cfg, self.interpolate_meth)(u"{{|{{not-existing}}|Empty|}}") | 2422 y = getattr(cfg, self.interpolate_meth)(u"{{|{{not-existing}}|Empty|}}") |
| 2422 self.assertEqual(u(""), y) | 2423 self.assertEqual(u(""), y) |
| 2423 | 2424 |
| 2425 def test_global_nested_filter_empty(self): | |
| 2426 cfg = configmix.load() | |
| 2427 y = getattr(cfg, self.interpolate_meth)(u"{{|pre-{{not-existing|Empty}}-post|upper|}}") | |
| 2428 self.assertEqual(u("PRE--POST"), y) | |
| 2429 | |
| 2424 def test_global_filter_upper(self): | 2430 def test_global_filter_upper(self): |
| 2425 cfg1 = { | 2431 cfg1 = { |
| 2426 u("key-1"): u("value for key-1") | 2432 u("key-1"): u("Value for key-1") |
| 2427 } | 2433 } |
| 2428 cfg = cfg = configmix.config.Configuration(cfg1) | 2434 cfg = cfg = configmix.config.Configuration(cfg1) |
| 2429 y = getattr(cfg, self.interpolate_meth)(u"{{|pre_{{key-1}}_post|upper|}}") | 2435 y = getattr(cfg, self.interpolate_meth)(u"{{|pre_{{key-1}}_post|upper|}}") |
| 2430 self.assertEqual(u("PRE_VALUE FOR KEY-1_POST"), y) | 2436 self.assertEqual(u("PRE_VALUE FOR KEY-1_POST"), y) |
| 2431 | 2437 |
