def test_smart_address_cache(): osc = OSCThreadServer(advanced_matching=True) assert osc.create_smart_address(b'/a') == osc.create_smart_address(b'/a')
def test_smart_address_match(): osc = OSCThreadServer(advanced_matching=True) address = osc.create_smart_address(b'/test?') assert osc._match_address(address, b'/testa') assert osc._match_address(address, b'/testi') assert not osc._match_address(address, b'/test') assert not osc._match_address(address, b'/testaa') assert not osc._match_address(address, b'/atast') address = osc.create_smart_address(b'/?test') assert osc._match_address(address, b'/atest') assert osc._match_address(address, b'/etest') assert not osc._match_address(address, b'/test') assert not osc._match_address(address, b'/testb') assert not osc._match_address(address, b'/atast') address = osc.create_smart_address(b'/*test') assert osc._match_address(address, b'/aaaatest') assert osc._match_address(address, b'/test') assert not osc._match_address(address, b'/tast') assert not osc._match_address(address, b'/testb') assert not osc._match_address(address, b'/atesta') address = osc.create_smart_address(b'/t[ea]st') assert osc._match_address(address, b'/test') assert osc._match_address(address, b'/tast') assert not osc._match_address(address, b'/atast') assert not osc._match_address(address, b'/tist') assert not osc._match_address(address, b'/testb') assert not osc._match_address(address, b'/atesta') address = osc.create_smart_address(b'/t[^ea]st') assert osc._match_address(address, b'/tist') assert osc._match_address(address, b'/tost') assert not osc._match_address(address, b'/tast') assert not osc._match_address(address, b'/test') assert not osc._match_address(address, b'/tostb') assert not osc._match_address(address, b'/atosta') address = osc.create_smart_address(b'/t[^ea]/st') assert osc._match_address(address, b'/ti/st') assert osc._match_address(address, b'/to/st') assert not osc._match_address(address, b'/tist') assert not osc._match_address(address, b'/tost') assert not osc._match_address(address, b'/to/stb') assert not osc._match_address(address, b'/ato/sta') address = osc.create_smart_address(b'/t[a-j]t') assert osc._match_address(address, b'/tit') assert osc._match_address(address, b'/tat') assert not osc._match_address(address, b'/tot') assert not osc._match_address(address, b'/tiit') assert not osc._match_address(address, b'/tost') address = osc.create_smart_address(b'/test/*/stuff') assert osc._match_address(address, b'/test/blah/stuff') assert osc._match_address(address, b'/test//stuff') assert not osc._match_address(address, b'/teststuff') assert not osc._match_address(address, b'/test/stuffstuff') assert not osc._match_address(address, b'/testtest/stuff') address = osc.create_smart_address(b'/test/{str1,str2}/stuff') assert osc._match_address(address, b'/test/str1/stuff') assert osc._match_address(address, b'/test/str2/stuff') assert not osc._match_address(address, b'/test//stuff') assert not osc._match_address(address, b'/test/stuffstuff') assert not osc._match_address(address, b'/testtest/stuff')