def test_alignmentOfAlmostEquivalentMessages(self):
        alignmentSolution = NeedlemanAndWunsch(8)
        nbTest = 1000
        for i_test in range(0, nbTest):
            common_pattern_before = self.generateRandomString(30, 40)
            common_pattern_after = self.generateRandomString(30, 40)
            # Generate the content of two messages
            data1 = TypeConvertor.stringToNetzobRaw(common_pattern_before +
                                                    "hercule" +
                                                    common_pattern_after)
            data2 = TypeConvertor.stringToNetzobRaw(common_pattern_before +
                                                    "thomas" +
                                                    common_pattern_after)
            # Create the messages
            message1 = RawMessage(str(uuid.uuid4()), str(time.time()), data1)
            message2 = RawMessage(str(uuid.uuid4()), str(time.time()), data2)

            (scores, alignment) = alignmentSolution.alignTwoMessages(
                False, message1, message2)
            (score1, score2, score3) = scores
            (scoresBis, alignment2) = alignmentSolution.alignTwoMessages(
                True, message1, message2)
            (scoreBis1, scoreBis2, scoreBis3) = scoresBis

            self.assertGreater(scoreBis1, score1)
            self.assertGreater(scoreBis1, 95)
    def test_alignmentOfEquivalentMessages(self):
        alignmentSolution = NeedlemanAndWunsch(8)
        nbTest = 1000
        for i_test in range(0, nbTest):
            common_pattern = self.generateRandomString(30, 40)
            # Generate the content of two messages
            data1 = TypeConvertor.stringToNetzobRaw(common_pattern)
            data2 = TypeConvertor.stringToNetzobRaw(common_pattern)
            # Create the messages
            message1 = RawMessage(str(uuid.uuid4()), str(time.time()), data1)
            message2 = RawMessage(str(uuid.uuid4()), str(time.time()), data2)

            (scores, alignment) = alignmentSolution.alignTwoMessages(
                False, message1, message2)
            (score1, score2, score3) = scores
            self.assertEqual(score1, 100.0)
            self.assertEqual(score2, 100.0)
            self.assertEqual(score3, 100.0)

            (scores, alignment) = alignmentSolution.alignTwoMessages(
                True, message1, message2)
            (score1, score2, score3) = scores
            self.assertEqual(score1, 100.0)
            self.assertEqual(score2, 100.0)
            self.assertEqual(score3, 100.0)
Exemple #3
0
 def test_alignmentOfAlmostEquivalentMessages(self):     
     alignmentSolution = NeedlemanAndWunsch(8)
     nbTest = 1000
     for i_test in range(0, nbTest) :
         common_pattern_before = self.generateRandomString(30, 40)
         common_pattern_after = self.generateRandomString(30, 40)
         # Generate the content of two messages
         data1 = TypeConvertor.stringToNetzobRaw(common_pattern_before + "hercule" + common_pattern_after)
         data2 = TypeConvertor.stringToNetzobRaw(common_pattern_before + "thomas" + common_pattern_after)
         # Create the messages
         message1 = RawMessage(uuid.uuid4(), str(time.time()), data1)
         message2 = RawMessage(uuid.uuid4(), str(time.time()), data2)
         
         (scores, alignment) = alignmentSolution.alignTwoMessages(False, message1, message2)
         (score1, score2, score3) = scores
         (scoresBis, alignment2) = alignmentSolution.alignTwoMessages(True, message1, message2)
         (scoreBis1, scoreBis2, scoreBis3) = scoresBis
        
         self.assertGreater(scoreBis1, score1)
         self.assertGreater(scoreBis1, 95)
Exemple #4
0
 def test_alignmentOfEquivalentMessages(self):     
     alignmentSolution = NeedlemanAndWunsch(8)
     nbTest = 1000
     for i_test in range(0, nbTest) :
         common_pattern = self.generateRandomString(30, 40)
         # Generate the content of two messages
         data1 = TypeConvertor.stringToNetzobRaw(common_pattern)
         data2 = TypeConvertor.stringToNetzobRaw(common_pattern)
         # Create the messages
         message1 = RawMessage(uuid.uuid4(), str(time.time()), data1)
         message2 = RawMessage(uuid.uuid4(), str(time.time()), data2)
         
         (scores, alignment) = alignmentSolution.alignTwoMessages(False, message1, message2)
         (score1, score2, score3) = scores
         self.assertEqual(score1, 100.0)
         self.assertEqual(score2, 100.0)
         self.assertEqual(score3, 100.0)
         
         (scores, alignment) = alignmentSolution.alignTwoMessages(True, message1, message2)
         (score1, score2, score3) = scores
         self.assertEqual(score1, 100.0)
         self.assertEqual(score2, 100.0)
         self.assertEqual(score3, 100.0)