ó nŽ¸Qc@sĽdZddlZddlZddlmZmZmZmZmZm Z ddddddgZ dddddd d!gZ dej fd„ƒYZ d„ZdS("s@TestCases for using the DB.join and DBCursor.join_item methods. i˙˙˙˙N(tdbtdbshelvet test_supporttverbosetget_new_environment_pathtget_new_database_pathtapplesConvenience Storet blueberrysFarmer's MarkettshotgunsS-Marttpeartchainsawt strawberrytbluetredtyellowtpeachtblackt JoinTestCasecBs)eZdZd„Zd„Zd„ZRS(tcCsY|jjd|_tƒ|_tjƒ|_|jj|jtj tj Btj BƒdS(Ns.db( t __class__t__name__tfilenameRthomeDirRtDBEnvtenvtopent DB_CREATEt DB_INIT_MPOOLt DB_INIT_LOCK(tself((s*/sys/lib/python2.7/bsddb/test/test_join.pytsetUp#s cCs!|jjƒtj|jƒdS(N(RtcloseRtrmtreeR(R((s*/sys/lib/python2.7/bsddb/test/test_join.pyttearDown)s cCsßtr%dGddGHd|jjGHntj|jƒ}|j|jdtjtj ƒt |d„t ƒtj|jƒ}|j tj tjBƒ|j|jdtjtj ƒt |d„tƒd}d}zÍ|jƒ}|jd ƒ}|j|ƒ|j|gƒ}|jd ƒdkr2|jd ƒn|jƒdkrT|jdƒn|jd ƒd dkr}|jdƒn|jd ƒrœ|jdƒnWd|rł|jƒn|rĆ|jƒn|jƒ|jƒXdS(Ns s-=isRunning %s.test01_join...tprimarycSs |j|ŒS(N(tput(tttpriDB((s*/sys/lib/python2.7/bsddb/test/test_join.pyt6st secondarycSs |j|ŒS(N(R#(R$tsecDB((s*/sys/lib/python2.7/bsddb/test/test_join.pyR&<sR iRsConvenience Storesjoin cursor positioned wrongR s&DBCursor.join_item returned wrong itemR s join cursor returned wrong things#join cursor returned too many items(RsConvenience Store(RRRRtDBRRRtDB_BTREERtmapt ProductIndext set_flagstDB_DUPt DB_DUPSORTt ColorIndextNonetcursortsett assertTruetjointgettfailt join_itemR(RR%R(tsCursortjCursorttmp((s*/sys/lib/python2.7/bsddb/test/test_join.pyt test01_join-s@      (Rt __module__tkeytypeRR!R<(((s*/sys/lib/python2.7/bsddb/test/test_join.pyR s  cCs&tjƒ}|jtjtƒƒ|S(N(tunittestt TestSuitetaddTestt makeSuiteR(tsuite((s*/sys/lib/python2.7/bsddb/test/test_join.pyt test_suite^s (sapplesConvenience Store(RsFarmer's Market(RsS-Mart(R sFarmer's Market(schainsawsS-Mart(s strawberrysFarmer's Market(R R(sredsapple(sredschainsaw(sreds strawberry(RR(RR (RR(t__doc__tosR?ttest_allRRRRRRR,R0tTestCaseRRD(((s*/sys/lib/python2.7/bsddb/test/test_join.pyts$  .  >