@@ -275,6 +275,20 @@ def test_all_meta_links_preserves_order():
) for c in '121323')
assert list(related.all_meta_links('approval')) == list('123')
def test_first_meta_links():
related = core.RelatedPostings(testutil.Posting(
'Assets:Cash', 10, contract=value, _meta_type=data.Metadata,
) for value in ['1 2', '', '1 3', testutil.PAST_DATE, '2 3', None])
del related[-1].meta['contract']
assert list(related.first_meta_links('contract')) == list('12')
def test_first_meta_links_fallback():
) for value in ['1 2', testutil.PAST_DATE, '1 3', None, '2 3'])
del related[-2].meta['contract']
assert list(related.first_meta_links('contract', None)) == ['1', None, '2']
def test_group_by_meta_zero():
assert not list(core.RelatedPostings.group_by_meta([], 'metacurrency'))