def testdb1(self): """ test the sig - db functionality """ conn = self._setupDb() ensemble = BitEnsemble() for bit in [1, 3, 4]: ensemble.AddBit(bit) sigBs = [ ([0, 0, 0, 0, 0, 0], (0, 0, 0)), ([0, 1, 0, 1, 0, 0], (1, 1, 0)), ([0, 1, 0, 0, 1, 0], (1, 0, 1)), ([0, 1, 0, 0, 1, 1], (1, 0, 1)), ] ensemble.InitScoreTable(conn, self.dbTblName) for bs, tgt in sigBs: ensemble.ScoreToDb(bs, conn) conn.Commit() d = conn.GetData(table=self.dbTblName) assert len(d) == len(sigBs), 'bad number of results returned' for i in range(len(sigBs)): bs, tgt = tuple(sigBs[i]) dbRes = tuple(d[i]) assert dbRes == tgt, 'bad bits returned: %s != %s' % (str(dbRes), str(tgt)) d = None self.conn = None
def test2(self): ensemble = BitEnsemble([1, 11, 21, 31]) bv = SparseBitVect(100) bv.SetBit(1) bv.SetBit(11) bv.SetBit(13) score = ensemble.ScoreWithOnBits(bv) assert score == 2, 'bad score: %d' % (score) score = ensemble.ScoreWithIndex(bv) assert score == 2, 'bad score: %d' % (score)
def test1(self): ensemble = BitEnsemble() ensemble.SetBits([1, 11, 21, 31]) self.assertEqual(ensemble.GetNumBits(), 4) bv = SparseBitVect(100) bv.SetBit(1) bv.SetBit(11) bv.SetBit(13) score = ensemble.ScoreWithOnBits(bv) assert score == 2, 'bad score: %d' % (score) score = ensemble.ScoreWithIndex(bv) assert score == 2, 'bad score: %d' % (score)