[Avida-SVN] r1361 - in extras: . source source/python source/python/Avida source/python/Avida/analyze source/python/testsuites
kaben at myxo.css.msu.edu
kaben at myxo.css.msu.edu
Wed Feb 21 17:21:24 PST 2007
Author: kaben
Date: 2007-02-21 20:21:24 -0500 (Wed, 21 Feb 2007)
New Revision: 1361
Added:
extras/source/python/
extras/source/python/Avida/
extras/source/python/Avida/__init__.py
extras/source/python/Avida/analyze/
extras/source/python/Avida/analyze/DataFile.py
extras/source/python/Avida/analyze/__init__.py
extras/source/python/testsuites/
extras/source/python/testsuites/bogus.dat
extras/source/python/testsuites/detail.dat
extras/source/python/testsuites/test_analyze.py
extras/source/python/testsuites/test_hello_world.py
Modified:
extras/
Log:
r1494 at clearly: kaben | 2007-02-21 19:56:09 -0500
Added some utility code written in Python:
- module Avida.analyze.DataFile to parse Avida data files
- preliminary testsuites of above module
Property changes on: extras
___________________________________________________________________
Name: svk:merge
- 079b078a-dbed-46b9-b3da-37668d4295ca:/avida/local/extras:1479
+ 079b078a-dbed-46b9-b3da-37668d4295ca:/avida/local/extras:1494
Added: extras/source/python/Avida/__init__.py
===================================================================
Added: extras/source/python/Avida/analyze/DataFile.py
===================================================================
--- extras/source/python/Avida/analyze/DataFile.py 2007-02-21 15:18:36 UTC (rev 1360)
+++ extras/source/python/Avida/analyze/DataFile.py 2007-02-22 01:21:24 UTC (rev 1361)
@@ -0,0 +1,52 @@
+
+class genotype_data:
+ def clear(self):
+ self.detail_lines = []
+ self.detail_fields = {}
+
+ def __init__(self, filename = None):
+ self.clear()
+ if filename is not None:
+ self.load_genotype_data(filename)
+
+ def check_filetype(self, file_format_string):
+ """
+ Raise a RuntimeError when given any file_format_string other than
+ "#filetype genotype_data".
+ """
+ filetype_fields = file_format_string.split()
+ if filetype_fields[0] != "#filetype" or filetype_fields[1] != "genotype_data":
+ raise RuntimeError, 'Wrong file_format_string "%s".' % file_format_string
+
+ def has_key(self, field_name):
+ return self.detail_fields.has_key(field_name)
+
+ def column_from_field_name(self, field_name):
+ return self.detail_fields[field_name]
+
+ def load_genotype_data(self, file_name):
+ """
+ Load genotype_data from file, verifying file type, and reading field
+ names.
+ """
+ self.detail_file = file(file_name)
+ self.clear()
+ for l in self.detail_file.readlines():
+ s = l.strip()
+ if s.startswith("#filetype"):
+ self.check_filetype(s)
+ elif s.startswith("#format"):
+ idx = 0
+ for field in s.split()[1:]:
+ self.detail_fields[field] = idx
+ idx = idx + 1
+ elif s == "" or s.startswith("#"):
+ pass
+ else:
+ self.detail_lines.append(s.split())
+
+ def entry(self, row, field_name):
+ return self.detail_lines[row][self.column_from_field_name(field_name)]
+
+ def __len__(self):
+ return len(self.detail_lines)
Added: extras/source/python/Avida/analyze/__init__.py
===================================================================
Added: extras/source/python/testsuites/bogus.dat
===================================================================
--- extras/source/python/testsuites/bogus.dat 2007-02-21 15:18:36 UTC (rev 1360)
+++ extras/source/python/testsuites/bogus.dat 2007-02-22 01:21:24 UTC (rev 1361)
@@ -0,0 +1 @@
+#filetype bogus
Added: extras/source/python/testsuites/detail.dat
===================================================================
--- extras/source/python/testsuites/detail.dat 2007-02-21 15:18:36 UTC (rev 1360)
+++ extras/source/python/testsuites/detail.dat 2007-02-22 01:21:24 UTC (rev 1361)
@@ -0,0 +1,122 @@
+#filetype genotype_data
+#format id update_born viable fitness gest_time length merit task.0 task.1 task.2 task.3 task.4 task.5 task.6 task.7 task.8 sequence
+
+# Legend:
+# 1: Genotype ID
+# 2: Update Born
+# 3: Is Viable (0/1)
+# 4: Fitness
+# 5: Gestation Time
+# 6: Genome Length
+# 7: Merit
+# 8: Not
+# 9: Nand
+# 10: And
+# 11: OrNot
+# 12: Or
+# 13: AndNot
+# 14: Nor
+# 15: Xor
+# 16: Equals
+# 17: Genome Sequence
+
+100 6893 1 7894.88 386 98 3.04742e+06 1 0 0 1 0 1 0 1 1 rzaakacmidnciebgvcckgbsceexseruqcgrpsglctncqcgqcdcycczpctgbsthroqctcnfcpcqcbtisdaevlbaykjutycasvab
+101 8535 1 4455.61 467 130 2.08077e+06 1 1 0 1 1 1 1 0 0 jhmaaxrilblazjyhvcrypaajpameaawsucavczczsrmzcqzyqcrzzcptqsyzcpclbbcsnrtfcwnzggqgcpcdaztidcdocfnqrrptrttrpsicpcecqqcppqgimutycasvab
+102 5757 1 183.433 254 132 46592 1 1 1 1 0 1 0 0 0 ruzabfgmqcgqqpcamyydfdocdeeqcpbreqqpcvcpysctkaqzclzcecrntdqclcsqsyrcjpupcndqcqieeidsbuttyasvhbabruzabouzabfgmqcgqqpcamyydfdocdeeqckb
+103 6251 1 4504.5 371 105 1.67117e+06 1 1 0 1 1 1 1 0 0 xrucavcnagbxukyudcbtmftphzqcpqcatihcppagpinqcsmchtlthtqnubofhzocaqiqtpqectuyghmjbdxicrgcrhoqpqlzutycasvab
+104 9000 0 4232.84 898 244 3.80109e+06 1 1 0 1 1 1 1 0 0 khqaqhqcpahiazkazpardasamaahgnelbczroaagaiaoesqokiarahxoaiqcqzsfbnnodppguqdfbfzagzilmqsdawapdjlazeucfaogecpinkpafanhnqahiepsfydlaujfpebaatmadceyzucavcrsqwfsxgzcbqcdfcpcejqcrgtatpppcqcgoctczygydpqkkfqcdqifhtmeuwbcyikydnuosccishcprndocucutycasvab
+105 5199 1 5986.46 260 98 1.55648e+06 1 1 0 1 1 1 1 0 0 rpucapfdgcpcqqcdcqadbcpppchqconccigqpbovcsqqcjctmqcukiquowzibkjcwoaijpsjfcsocqcsspczqcflutycastvab
+106 5413 1 2914.76 267 99 778240 1 1 1 1 0 1 1 0 0 rucascehbimqcrcsscnamgrcomeqpcbyspsqcvcqgyrhvctzzpincdsgfbbmorqhcstbqdcslcgscpbcqccygtdoquttycasvab
+107 3987 1 17629.6 342 94 6.02931e+06 1 1 1 1 1 1 1 0 0 rmizajqcmwccosvcszqpsqctzcgpcqpggcgnhbhtlecfcreccyspcyqqchpcylncboczmcpaomeazisqcqppqutycasvab
+108 7321 1 762.394 274 106 208896 1 1 0 1 1 0 1 0 0 rhucavcfcfjcjblcbdnczqblspkrfimqcnaqpttqojzcupqtwahpcjcpqcaeacihhcnjyhtgccpfqppcchacqcdonctqnqctuttycasvab
+109 7874 0 4287.4 428 116 1.83501e+06 1 1 0 1 1 1 1 0 0 qrtrndreritrdzavcmvcpqfaidzqcpogccnqzptipqypqhkapcftbgpspqpzshbgcpaglnqaqrxjucnupjoobfeglcxnyxymqoxoineerlfutycasvab
+110 8204 0 2102.18 1134 300 2.38387e+06 1 0 0 1 1 1 1 0 0 rqznrrzrrqzrrrurfqzrrrurruurrrurorhrxrplrruprrurrxariqruruxetchorupobunurureyucururujurjrnrecrsursrufwrqzuucrtnndkrurltururuhuoydhsolrupruhuuhruaruhgzhriarwycfuhrnolsmkruprzpdhrterprlbrrpogugrpucavcdmmchffsjrwvsqmxictoqcplijknrdqugttimudtqjkfotszaqfcbwqmczpcptontylqpgrbggpqprcgewbyqcocqcrqsutycasvab
+111 5940 1 285.538 312 90 89088 0 1 0 1 1 0 1 0 0 rucavccayuugcpzccoaqctazccolcdqczebzqcpchsngchztgcqczetcfcgbctblpctqbqfaatcqcpqxmutycasvab
+112 6298 1 273.655 348 99 95232 1 0 0 1 1 0 1 0 0 rucavcpffojtsnpbtxjktradjracaqcegpbcocgeztbjcergqpfcistcgpgcczrctgxpcontcfcescpbqpafqbygqcutycasvab
+113 5242 1 17364.2 351 98 6.09485e+06 1 1 1 1 1 1 1 0 0 crucavcjqcbtfqncydlctcgzcgcbccocdppcqcecbegdirqccfofcrncqcdbeqnotppcaaqbocmcrdzrcidoqfcpqutycasvab
+114 6096 1 275.147 361 99 99328 1 1 0 1 1 1 0 0 0 oruhxqqchppvccqpccgksfnqcbwcafcpcaclqgzhyyddmcpvbiczqcgvcxcvcyjcarsagfifqppcyttqcthooclqirutycasvab
+115 9858 1 3.41512e+06 1012 106 3.45611e+09 1 1 1 1 1 1 1 1 1 rrucavcchbnkoncochbkccjjncaamcqrdgccauhpapickrcncckbjxacbdcccxacarcodidccfatccdccsqjiocupticpcdcyqbycasvab
+116 5638 1 4464.18 356 101 1.58925e+06 1 1 0 1 1 1 1 0 0 rgucavchamftfjidzzuqbctnpmitelznmdchgzsmzhqtukqtfctismoqphhqqrpqcpccqcepcpbhtrtrrciqcoqtpnlqutycasvab
+117 6269 1 567.23 343 98 194560 1 0 0 0 1 1 1 0 0 rouzavctoldstcocfukltlcqnccyhseeygcozaogfclcyczqctyyydccbctcelttxqcpcpilqctomqsplcnqhfledutycasvab
+118 5891 1 17394.3 373 101 6.48806e+06 1 1 1 1 1 1 1 0 0 ruawcwcomqfcyogncpcdgccqfqipcspiqcvcoaqvczhdpgxgurzzofpcdipqstqdszzqtfdaqlcqalgasaqdnqrjmgjiutycasvab
+119 5602 1 1460.59 258 95 376832 1 1 0 1 0 1 0 0 1 rucasdfbopaopcrkdxcllslfqcncvcgbmoqpexqoiimjylkbqcrmoaqpcgpgqqdcdyplfcecgynciqbfgpslqutycastvab
+120 5022 1 285.325 323 92 92160 1 1 0 1 1 1 0 0 0 rmdzavctctwgkbqabytkiicqzaqppcmczdhqtocojafcbloeepcpztaiqcpcdbecczpqptiqczpcapccqqcutycasvab
+121 6572 1 2208.09 371 103 819200 1 1 1 1 0 1 0 1 0 rucavccnztzxftrpbgqcqcgryzdcqcozqpqpcnlqpdbqbfpcmqhoosygcjazqctgszbotgnnqptfradfoxzhqcazpnmqakutycasvab
+122 7213 1 1091.55 379 105 413696 1 1 0 1 1 0 0 0 1 jrucavcctkhfbtojmaillcqfauomtekcqqcpgqzbuqcyhmzkaochdaanjsycvpzysgcfqccibdecppcqsbfpqsmaebofqcmrutycasvab
+123 6762 1 188.93 271 102 51200 1 0 0 1 1 1 0 0 0 rzavcxyskcthhqbutxegdcbzxjazsfynfcwxyhlqucqqqcplcsndcqfmahcoehcedtxgrpafcgqcizfcipcsbpqgqcuqtttycasvab
+124 5527 1 367.025 279 105 102400 1 0 0 1 1 0 1 0 0 rucakfxqqeixcfahnhapbjjymfrpqpcpqijgckrjgyoceavcqpdccpqvcdachpdisbtsczsechzpqcfccscttdtdpxhqtzguttycasvab
+125 8837 1 871.19 583 131 507904 1 1 1 1 1 1 0 0 0 aajosmetwnthjiknarauasaczdjnuqjicbcehwcnueyqcpotcqtezcypqtpclebbcnpataccqcinqhqchhemcaygtpbrerifgpjgkmevepgszfkccubwzarmtautycasvab
+126 6141 1 15031.2 436 104 6.5536e+06 1 1 1 1 1 1 1 0 0 rucavcbioakgamdlgjnutpcgcecqeocjdqhgcgsecypppcqcrsocqcsqceycbbisccyvlnzqdcpbcmlztrqkgdfiqtxizetutycasvab
+127 9584 1 16946.1 1195 320 2.02506e+07 1 1 1 1 1 1 1 0 0 fugucugbjmppacfanbjzwzddumawykaiziapnayajasjqcararaolaqpaxeasarutodmjiqaryarjpkuxakrqxcrpaaaajqhaxxsudrnjawgahjapnwpyuagbnaricplkqhuamhmnmupfaajtdafyflwfzxanarefffbunmazxesoarmqiiegaevidqnyrdxqsakacupdhywmapemjmildoyjrzlequmgucajcntcaiaadqqcpygdvcppcwbectqfiqqcpgfyckpnczlctaqctfcgcpcccssqcdcocctnkyfpqnrlqcbdfsutycasvab
+128 6811 1 4011.64 437 112 1.75309e+06 1 1 0 1 1 1 1 0 0 rucavcmbkfipcdmfcyshogfksymgzogeyokjjxrcxgjatacjojxaxcjcxlbauycwoapxmagqqshtdfqctpqccpcnlgcqfpdqpprqcqeutycasvab
+129 6776 1 274.531 373 103 102400 1 1 0 1 1 1 0 0 0 rucavcsipilhxxqchpqqocdcfcdzwhgtnchasocztmcpqpcaqpspqpccnfboiqmcjtzqcrjhtlsaqspklhqzdrpqgbjzktutycasvab
+130 9657 1 548.32 437 121 239616 1 1 0 1 1 0 1 0 0 usaryqvcsuxlgucavcnkzmklgbfcbnicmgpcyztbrxfhfctpyphasqocibcpcqmgqpyrgrtpadqtlqcuhztmzgmbpnxuqpxdbycjicpgqtqceapqutycasvab
+131 5716 1 4315.79 410 109 1.76947e+06 1 1 0 1 1 1 1 0 0 mofuzaorrzamghsqwjnrnbahmbccqschfpgjaidvcmexqcrjbocqccoqcrpcdpifphgcqpdpdfbrfhoqiztqpqpsgpqlitfnqiccdcutycsva
+132 13605 1 43.7183 568 100 24832 1 1 0 1 0 0 1 0 0 rizavcqhzifhyldfcobcmcqclqkpcqtdptbkcjooczydnaeczafcfaloicxbrxtahuaafkelcolcitsuyqqcbtocqcpbtycasvab
+133 6468 1 2964.42 257 99 761856 1 0 0 1 1 1 1 0 0 krzzaghfbfvctcidxsaiyniifyunczzcsmgabmqpczzypcchtqzzppcptbbrzqcepcrlnqpqzclfscfoqcmyqoutycstvakrzza
+134 6371 1 279.003 345 98 96256 1 0 0 1 1 0 1 0 0 rucakavcorpatbnymutfpyynekbcocccihclgqjcclmhttcaegcccmcrjcpcqecgcpgtlccygacasbncpgztqcutqftycasvab
+135 7263 1 44.973 259 96 11648 1 1 0 1 1 0 0 0 0 rucavcmhhcdhxcrzsysrkuyykbwopkowmzecqachgqynauaukbpscdbbcnqcsoclffnyckienqccpccpbqqcpquttycasvab
+136 5170 1 1470.36 273 102 401408 0 0 0 1 1 1 1 0 0 rucavcdnslfebpoakifxfnbfpcvcsqqpcjqpdccccpfcvcvcncpcbhqiqqcfqpczcpgmazcfcqedsqkyfbmoqyochcjfuttycasvab
+137 5407 1 1100.26 376 104 413696 1 1 1 1 1 1 0 0 0 rucavcisqczbccgcljaebqfpeqppzqcclbdgncbsqchfcnbcqaananmkcnicdcsqqmthsyhchdziaaobtqoqdchncpytqpnutycasvab
+138 8999 1 4407.65 368 101 1.62202e+06 1 1 0 1 1 1 1 0 0 rynuzavcqcqlqipedbctrzcdpcbgccqszyyoqcmcgfcstctphbpbtbczfnmqzsmrffroquhcjspfikmocqcepqnkdtqxutycasvab
+139 7563 1 382.804 535 107 204800 1 1 0 1 0 1 1 0 0 rcrczavckzcucybheqaebyxafczktlbcdgcjokkrjnrryuqicabpceodpgqkdqseqcyccecncylcqcfcccbtpscyfhdchlnebqyutycsvka
+140 5323 1 4421.08 378 106 1.67117e+06 1 1 0 1 1 1 1 0 0 rnucavcmmecyurptbxucyzkobbkcqcqzbtckpqizfzomncdgnctctztfcahyyqqpbzscecpcqcoigczbnqcqrpqplntxqihlmutycasvab
+141 5975 1 1098.93 410 114 450560 1 1 0 0 1 1 1 0 0 ogygaqldfssyxjsrucavcizaqjcatztxcerfahghrcpcpngrtlztcccpcicrgonadzpfpciccchqccgpccrrpctcfqcrpicpcqcoqpqbnutycasvab
+142 7963 1 45.8781 279 104 12800 1 1 0 1 1 0 0 0 0 qomdrucancvckjyezadgreyeitrqcoepjsitcnpzruutazmrsaqcdpcqcngpsuxmqctdyapsapfcqchpcyrhspqqcgpqrluttycasvab
+143 6365 1 734.05 279 105 204800 1 1 0 1 1 0 1 0 0 rucavcmpsqclfpscbpochacsaexjcsyrbecqcpcnicacjcedfcmcrlypcicaqqctpbayhtqqhsjxdcnnzdretjngotblqasuttycasvab
+144 4469 1 71303.2 375 107 2.67387e+07 1 1 1 1 0 1 0 1 1 rozapjqcapqrrcpepcplnqsscmvclycrccfgccqpqqecfglattgpbzqbpckrqbpccntfpacdctftcalchncbgthadtqcqtqaoutycasvqab
+145 4916 1 17211.5 396 109 6.81574e+06 1 1 1 1 1 1 1 0 0 jqhrpkwojqulqwzzadnvctkflpcgtqkpnakcidnqjcrqccppcqccygrkciczfcpqpgfcncczdbagezocmccqchpaocpqcqpqtaautycasvmab
+146 6108 1 835.021 233 100 194560 1 1 0 1 1 0 1 0 0 rucapdccrbrlxsdqoccnrhxbnjoqyncvcgheicpfcgnccwcegbpfqaqccbcvczcpcpcgccpqqcpqoufckomqeytnbutttycasvab
+147 5383 1 33956.5 386 105 1.31072e+07 1 1 1 1 1 0 1 1 0 rxqzaepbncbonmcpqiplcqdcwcancocpnmllqhexypgbcvcipqcacrseatocqqoiydececroqcnqzixnlxmjlcatakoruceeutycasvab
+148 4691 1 5957.82 264 101 1.57286e+06 1 1 0 1 1 1 1 0 0 rucapafqfcmcpqpqcgxncaicocdcwcqcpcjgcgcfdbapcvcqnqtqcpqrcrcziprkycndckafbcacoqxsbdgbkbzueaiuttycasvab
+149 6414 1 741.391 279 104 206848 1 1 0 1 1 0 1 0 0 rucavcjpxciuqbzqieuifpjggjfqdafpbznjkcceclmjwbjbqccsobfccfcoccbygqcdahgpcccpazapqcziccpyqqcpqzuttycasvab
+150 6264 1 4304.64 373 102 1.60563e+06 1 1 0 1 1 1 1 0 0 rrzucavcfhqthuspthcnjaebcalcycvrjgqcocfkqqcbplnrdgcgccgpcqcrqgrpptfchbcoqbcbpqhdyfgmnxylyqoajutycasvab
+151 4713 1 6789.77 222 96 1.50733e+06 1 1 0 1 1 1 1 0 0 rucavctuxepqcccozbdejccqczpcptycmdyqccfcatznczpbcqidrmcsbscxdzcqkqcxsqcqpesaqplnqphqbutttycasvab
+152 6709 0 881.418 237 107 208896 1 0 1 1 1 1 0 0 0 zkefaaaxrqucajsivckfmgdbgccgpclcbhgjocxqcocytqcajtcgroxtezqccpcpqcaaqqpeglntepcvbsayctcqnblshxncqgutycasvab
+153 6358 1 46.0996 261 98 12032 1 1 0 1 1 0 0 0 0 rnfyaohngzaicdhxhxxfqcfleaprxaqcwchmcegckvcdshzjjbocnqmchzbgcycqecsrsdppcqscedbqcphdbqhguttycasvab
+154 6700 0 2095.81 1028 270 2.1545e+06 1 1 1 1 1 0 1 0 0 qqqqqqqqnqqqqqqqqtqqqqqqqqqqqqqqoqjqqqqqfqqqqdqqkiqqkqqqqpqqqqbqzqqsqqqqqqqqqqqqqqqyqqqqqqqqqeqocghqqqqqqoxqzlfzdqfqsqrqfqoqiqqtqrqcqqomoojhsqomplaquhpbxlzndspkhkupmoluoqucavcqappoxlrtbdhpqhiqpcbypcngclgzgcqcxlcyyncqlmxtfceysdajarplccycvbnzbcmcgifcpqcdqpqtngmskutycasvab
+155 6372 1 705.422 270 99 190464 1 1 0 1 1 0 1 0 0 zdcdmxdskompypdkamrbgrzehybxjfuocbcaczacdupoakcccopoqcpocgivcgjqprsgzzpcsqfqcoqytbssceypquttycasvab
+156 6143 1 198326 534 103 1.05906e+08 0 1 1 1 1 1 1 0 1 ruzavcqmfpsdhmqlfpgcegrrugyrxueancgqpqptedfciiyihcaypdgyhqnconcagmqhbdsppcfhglacmoqicaosbyvoecutycasvab
+157 5816 1 1122.19 365 103 409600 1 1 0 1 1 0 0 0 1 rucavctlfootuglgqhwpgkouqqtcfccdpcqczcxitqrpccbgpzqcattpcpcschscgoqcfcqcddzcrndccbhxtgcbiixbrqutycasvab
+158 4879 1 17390.8 358 98 6.22592e+06 1 1 1 1 1 1 1 0 0 xrucahydpcpglsqkaphhyqjcrpkcqcpcgcpqfbpcdvcgqhqhitqzpqzfcplcnqnqckrjqyinxctkxtbhecyxhcnknutycasvab
+159 6049 1 718.596 285 107 204800 1 1 0 1 1 0 1 0 0 rucavcyfalangmrbqfzpkliapdqcncdebtagcoczsdqzaadeyzcgbcmcpbgqpdynlqcqppchdqphnaychaqcypccgsphcsqxuttycasvrab
+160 5802 1 2477.83 324 101 802816 1 0 0 1 1 1 1 0 0 rucavcanauifgzxgjjzdrcizdrukpksqbjsnuinnjcecpqcrzggjfpcccqdbppalnqqcqpcshaapctqagcbqcpnlqouwttycasvab
+161 5832 1 180.384 281 105 50688 1 1 1 1 0 1 0 0 0 rucavcdybqubmkurmjioghecgodrjcufumnbotqrmdpqcheptqcyaoplnirrmseyclhoqfqcrfrtlcocqpqcgbcqpqioprguttycasvab
+162 4478 1 4409.29 353 98 1.55648e+06 1 1 0 1 1 1 1 0 0 rwzacbpvczchgqctobicsqcpcsdrzpccfoeqdczqtscprrgcrzjadqceipcpqgcltjbzfemcypbcqypqcsyzqdtaqutycasvab
+163 10429 0 1025.2 855 228 876544 1 0 1 1 1 0 1 0 0 aaaaaaaaaqaaaaaaaaaaahaaaaaaaaazaaaaaayaaaaapaaaaaepaigxalaruqrbqapaazaapcrxzaicwaasqikapqhpbyaqrnchaqamqeahgasgsrahmeasdqakloamerbjgdgroqqdkuacnhafmyicmvculcdiwkglrqywgwrccddpctpccnqpsscrgpcaqcxczlaqommndaffchaoqlcekczutycasvab
+164 6136 1 4322.96 379 102 1.6384e+06 1 1 0 1 1 1 1 0 0 ruzavcxtixcgzuqgfxsjmfkjrbhpsdmusmdkcghihuggxjtcctcjxzqccpoedcgqcapchpadlbnqcqprldnqpqqapqhrbutycasvab
+165 6109 1 2288.94 340 99 778240 0 1 0 1 1 1 0 1 0 rucajqqcplhhbnqdiyvczcgdbppcqhtlttqtfazycjtcoickctomtocqcgomtldciccottcrcmrgccqqcbmgdnhqiuutycasvab
+166 9645 1 258.065 496 133 128000 1 0 0 1 0 1 1 0 0 hasawqauenruaaiorbagrehyhaqiqujdklpzamcqyadpsaqqvccncqcbcsccppccpqqplcnqfeqtkmcsdcoeacqcddeocgxasgmtzrxlcbqhsjghxersijtgkjhqutycaevab
+167 6877 1 277.333 384 107 106496 1 0 0 1 1 0 1 0 0 iwazgxrugnruucavcljolyrkmcsnstcgutmhksthxjiuhxmscycxtsjfcdcqczgocqcgbjrstgrejafbocqtcgptgpqpnlqfyqutycasvab
+168 5020 1 6009.58 259 98 1.55648e+06 1 1 0 1 1 1 1 0 0 ruzaicwcexuzhyqrtgxcjyrnqcelchdbackgmncyycuodyjcxqcpasczapcdygcpqiqccoqftpcqcqpczcnlqcaquttycasvab
+169 5319 1 4246.12 382 105 1.62202e+06 1 1 0 1 1 1 1 0 0 rucavcwsdtdcjaobldpgiochikcpciqcoqsbcrenppcbqfoyhsmqfcprqcipptdcpccqmqmorbdcnlpnltybrzgqdcziqdzsutycasvab
+170 5664 0 721.127 1136 102 819200 1 1 0 1 1 1 1 0 0 rucavcccucpqcddsorgcegtgyondearoazcncdyoatchcgbfcygsghcirqccccpceaccqccapcalccnccoqcncqioccqeutycasvab
+171 7707 1 712.348 322 116 229376 1 1 0 1 1 0 1 0 0 xncfqohyhxsaairucaqvcjcpbndgrfutoxiclzilmgmcrtutccybyupeqaufkqcoumcjqesipbgqpcqcfchcrprdhpcqcccsccrgohhtzquttycayvab
+172 6747 0 277.082 340 94 94208 1 1 0 1 1 1 0 0 0 rkzakicwcdmqccssbkcpcffldbjnjcerhtjqpqpshpsncqqvclcqcibipetgdijbrrcpirdcchqmutfmmtmahutycasvab
+173 6834 1 4416.26 486 134 2.1463e+06 1 1 0 1 1 1 1 0 0 ulimxaarkpxlsunuadxakaaafqaqkucavcaftcuqhoyszldsfcdfifqzrcdgqckcmcsbtiissicygpqctpcsqgisgzocctzpqfqqcpsncrtcrzqlcqctrjdterxcsutycasvab
+174 6352 0 546.474 401 111 219136 1 1 0 1 1 0 1 0 0 aqflrdkxzokceciczxdokbfagejhkepnxcefpgcytpefcvctwytetrrqchchbsofcgtwsaasfceahqcqcypcrdpcpqcezoqppqzpqmutycasvab
+175 6300 1 1482.51 268 100 397312 1 1 1 1 1 1 0 0 0 prucavcaunsaixqxbojcctuurqxcpcbqcdpcchrpcyqchiyylcncgocbppdhqcgoccgbcfqnymqoqcqpncqjkstgunuttycasvab
+176 9663 1 1081.13 466 127 503808 1 1 1 1 1 1 0 0 0 pkxedxzyyhfdlrimllducakconxbsejienofocfivcxkbzkscsjreoaftyjfpqceapqkqppcghqzdrfsttjncccdgzocjdctobrhqqmcdcbntqgoqqccmrutycasvab
+177 6205 1 271.673 343 97 93184 1 1 0 1 1 1 0 0 0 rucagjncnakqjvccqcbzdctqypltjzbdknyeghqprqdnrcgtgaydtpybnsbxnoncrszamcrtdgqofcqptgzpcqqcutycasvab
+178 6313 1 2236.26 359 103 802816 1 0 0 1 1 1 1 0 0 rjzagvctrkteccauqanwzbohqhyconehserctpcphcafckceclaocqcpcqcpctctebsctphqbstiogccnaqszsrpcnlqjgutycasvab
+179 5283 1 3053.11 271 104 827392 1 1 1 1 0 1 1 0 0 ruzamvcoqcaoqhbicqcpqjcqcdhccpcwbgcpqpiclbjdthgyxkmctocbhebhbufgxictpcbgqcdssdarnlpcqioaqatoaouttycasvab
+180 6937 1 538.296 331 91 178176 1 1 0 1 1 0 1 0 0 rucavcqstpxoqszlmiygqqpzeqinumocctwahyqpcgcfqzqpdpcqcyesstcctjaharoyzgcsccsncqpqckutycasvab
+181 6209 1 2176.32 399 109 868352 1 1 1 1 0 1 1 0 0 sqasnrkzavckbdmpjjwndanpcmeeqjcpchhrbieqpcocsevcsojchxqccfcwagbfpagrencpqtnlqpqdcqcgpepicfcoqtaxfshdutycasvab
+182 8029 1 138.847 354 98 49152 1 1 1 1 0 1 0 0 0 iruzavcpqcpqpqpccpqtagfzthniclquumaglwdxjeatynbxeahcsmgczsmdbbyibnnusfpicmbtoqjuwtmqczulfutycasvab
+183 4778 0 17201 381 106 6.5536e+06 0 1 1 1 1 1 0 0 1 ulariucafpkqqkxqchlqbpcyrpacyybwccdnchocedltcvcoqhdmcmgacciacnqcoythdchpcpcgctrsecafcqqcfciqpqlzhutycasvab
+184 7671 0 131.832 668 179 88064 0 0 0 1 1 0 1 0 0 ccycymwbknckrcpqprrrrqfsjarducrlavcjurnrrurdiwrludyyffmgwdsrgrwfefjutwugmorugmjdiooucaxpcqifiqkcqmcecvccjcoidficmrdqticeychrtpncozqcedpcrzpbciqconcahcsqcscqacqgcomeqjsnicutycasvab
+185 5198 1 289.057 333 97 96256 1 0 0 1 1 0 1 0 0 rucagcvcipckecyqzqqgcctzyppcsqcpcaecytgqtrgcieicbqjfccfespctoctryttrcoxcfctzpcgrqtfnqcpoutycasvab
+186 6708 1 16867.2 373 101 6.29146e+06 1 1 0 1 1 0 1 0 1 asljruzaecriimgshbcefvccpcyqfahqwagctplcnccqcpcpehzhgqzqcpqpyexfccphqnqfjsjpeedqfckxzpccbydtutycasvab
+187 5734 1 736.36 267 102 196608 1 1 0 1 1 0 1 0 0 rucavcumtwanaeykocuygkpcgcchkprgcpdjcdtejpobczzgdqpcnylfnqgfarppcbacyccjdizhtgqcfcpcqdqcpqtluttycasvab
+188 8994 0 932.752 202 100 188416 1 1 0 1 1 0 1 0 0 rsucavceboczdcuczfpozpynnierdjysfisutqcchyytelcpfyocbfynecqpirdvbgcrscpqqcccpeqfoscqonhgnuttycasvsab
+189 5457 1 1104.54 356 98 393216 0 0 0 1 1 1 1 0 0 gsjrofzasljkfecjfkykgkijifwcksqcyjgcomcapagdadrygmqcpciavcdeatpqicpptqzbltiaetdqpfcsngqputycayvyab
+190 5494 1 15696.3 405 103 6.35699e+06 1 1 1 1 1 1 1 0 0 rucavcwwrmuminqcknqrolqcyytbbfhtmoccljqddyppyfccirttqqscprnleqqcrrevtygtrcfapcfhpoybrscizqtqcdutycasvab
+191 6303 1 550.723 357 100 196608 1 1 0 1 1 0 1 0 0 ruzaejqccmdyobqdpqbkagdxcbcswnmcycywcpgcqchvcygpctcpiqgcfpskaqqclkoonaczifszzuytwhsottbnbctutycasvab
+192 5521 1 4389.48 321 90 1.40902e+06 1 1 0 1 1 1 1 0 0 rucavcynnlygzczofhrfcjwqltittozoocsbtjqqcrpsngotqfltfcqgqocpsqccspcpzhqfgngeiqcoqutycasvab
+193 4473 1 1466.27 257 97 376832 1 1 1 1 1 1 0 0 0 rucavcxufclqcjpoqdpcccctiipccycophqcqbccpczncmycgdccgcgcboebssehqhjfltgczlcchczpcqpgpqkutycastvab
+194 5550 1 2828.19 252 94 712704 0 1 0 1 1 1 1 0 0 rdipucavcqcnqppirfbtmlahyohaccqfpljszknrdfdlstqpcpqcrccdoccpqqcpqccqlpeqjcspfifbcediuttycasvab
+195 5294 1 738.148 283 105 208896 1 1 0 1 0 1 1 0 0 rucavchchiepjnyxaaurcxbhlnyqncpbqyzrqcpcpcgcpcsaqcbhpdrsgncclnazclblcnsczfepzqccbeothmcqfocdqpduttycasvab
+196 6631 1 278.456 342 96 95232 1 1 0 1 1 1 0 0 0 rmucaxcpcvcbicdqoucourjktbumpsncjykrhcticegoogcidrcedbtqccpqpipiqfoctqctoqcpcsecpqzqcicutycasvab
+197 6357 1 738.078 308 115 227328 1 1 0 1 1 0 1 0 0 zarucavcxdzichfsizcjicfcnejpksqeajcdfltkjmlqocipcbhafgsrqcppioicctpzrpqogwwicppciccqgndmchsoiatpcassqcqpquttycasvab
+198 7104 1 550.924 342 98 188416 1 1 0 1 1 0 1 0 0 yrucavcwqegclszkmpqooydmjntjxcapcuxtfcjtulqpcdccectjcpcfnqeappqpibmtatnbybmllqqcptqsguadfutycasvab
+199 5486 1 1095.96 370 103 405504 1 1 1 1 1 1 0 0 0 rucavcoifuifrhktpaliqjctxqcpipbdqjbidaxicgphqptbhtqpceaybnpfgqshppcdqcfcwcacczlaocbhzcspjcqdgoutycasvab
Added: extras/source/python/testsuites/test_analyze.py
===================================================================
--- extras/source/python/testsuites/test_analyze.py 2007-02-21 15:18:36 UTC (rev 1360)
+++ extras/source/python/testsuites/test_analyze.py 2007-02-22 01:21:24 UTC (rev 1361)
@@ -0,0 +1,111 @@
+import Avida.analyze.DataFile
+
+import unittest
+
+class Test_avida_analyze(unittest.TestCase):
+ def test_bad_filetype_in_check_filetype(self):
+ """
+ Verify that genotype_data.check_filetype() raises a RuntimeError
+ when given any file_format_string other than "#filetype genotype_data"
+ """
+ gd = Avida.analyze.DataFile.genotype_data()
+
+ caught_runtime_error = False
+ try:
+ gd.check_filetype("#blah")
+ except RuntimeError:
+ caught_runtime_error = True
+ self.assert_(caught_runtime_error)
+
+ caught_runtime_error = False
+ try:
+ gd.check_filetype("#filetype blah")
+ except RuntimeError:
+ caught_runtime_error = True
+ self.assert_(caught_runtime_error)
+
+ caught_runtime_error = False
+ try:
+ gd.check_filetype("#filetype genotype_data")
+ except RuntimeError:
+ caught_runtime_error = True
+ self.assert_(not caught_runtime_error)
+
+ caught_runtime_error = False
+ try:
+ gd.check_filetype("#filetype genotype_data_")
+ except RuntimeError:
+ caught_runtime_error = True
+ self.assert_(caught_runtime_error)
+
+ def test_bad_filetype_in_load_genotype_data(self):
+ """
+ Verify that genotype_data.load_genotype_data() raises a RuntimeError
+ when it tries opening the wrong kind of file.
+ """
+ bogus_name = "bogus.dat"
+
+ caught_runtime_error = False
+ try:
+ gd = Avida.analyze.DataFile.genotype_data(bogus_name)
+ except RuntimeError:
+ caught_runtime_error = True
+ self.assert_(caught_runtime_error)
+
+ def test_loaded_fields(self):
+ """
+ Verify that genotype_data.load_genotype_data() also loads field names.
+ """
+ expected_field_names = [
+ "id",
+ "update_born",
+ "viable",
+ "fitness",
+ "gest_time",
+ "length",
+ "merit",
+ "task.0",
+ "task.1",
+ "task.2",
+ "task.3",
+ "task.4",
+ "task.5",
+ "task.6",
+ "task.7",
+ "task.8",
+ "sequence",
+ ]
+ gd = Avida.analyze.DataFile.genotype_data("detail.dat")
+ self.assert_(not gd.has_key("blah"))
+
+ for expected_field_pos in range(len(expected_field_names)):
+ expected_field_name = expected_field_names[expected_field_pos]
+ self.assert_(gd.column_from_field_name(expected_field_name) == expected_field_pos)
+
+ self.assert_(gd.column_from_field_name("sequence") != 0)
+
+ def test_reading_detail_file_entry(self):
+ """
+ Verify loading a detail file, then reading an entry by row number
+ and column name.
+ """
+ gd = Avida.analyze.DataFile.genotype_data("detail.dat")
+ self.assert_(100 == int(gd.entry(0, "id")))
+ self.assert_(101 != int(gd.entry(0, "id")))
+ self.assert_("rzaakacmidnciebgvcckgbsceexseruqcgrpsglctncqcgqcdcycczpctgbsthroqctcnfcpcqcbtisdaevlbaykjutycasvab" == gd.entry(0, "sequence"))
+
+ def test_detail_file_len(self):
+ """
+ Verify expected number of entries in a certain detail file.
+ """
+ gd = Avida.analyze.DataFile.genotype_data("detail.dat")
+ self.assert_(100 == len(gd))
+ self.assert_(101 != len(gd))
+ self.assert_(0 != len(gd))
+
+
+if __name__ == '__main__':
+ try:
+ unittest.main()
+ except SystemExit:
+ pass
Added: extras/source/python/testsuites/test_hello_world.py
===================================================================
--- extras/source/python/testsuites/test_hello_world.py 2007-02-21 15:18:36 UTC (rev 1360)
+++ extras/source/python/testsuites/test_hello_world.py 2007-02-22 01:21:24 UTC (rev 1361)
@@ -0,0 +1,15 @@
+import Avida.analyze.DataFile
+
+import unittest
+
+class Test_avida(unittest.TestCase):
+ def test_hello_world(self):
+ self.assert_(True)
+ #self.assert_(False)
+
+if __name__ == '__main__':
+ try:
+ unittest.main()
+ except SystemExit:
+ pass
+
More information about the Avida-cvs
mailing list