def testDiffInsertionSeqs(self):
        """Verify computation of AAI on two different sequences with multiple insertions."""
        aai = AminoAcidIdentity()

        score = aai.aai('A-C-G-T', 'AACCGGT')
        self.assertAlmostEqual(score, 4.0 / 7.0)
    def testSimilarSeqs(self):
        """Verify computation of AAI on two similar sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'ACGG')
        self.assertAlmostEqual(score, 3.0 / 4.0)
    def testIdenticalInsertionSeqs(self):
        """Verify computation of AAI on two identical sequences with multiple insertions."""
        aai = AminoAcidIdentity()

        score = aai.aai('A-C-G-T', 'A-C-G-T')
        self.assertAlmostEqual(score, 1.0)
    def testPartialOverlappingSeqs(self):
        """Verify computation of AAI on two partially overlapping sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT--', '--GTAC')
        self.assertAlmostEqual(score, 1.0)
    def testIncompleteSeqs(self):
        """Verify computation of AAI on incomplete sequence."""
        aai = AminoAcidIdentity()

        score = aai.aai('AAAACGTTTT', '---ACGG---')
        self.assertAlmostEqual(score, 3.0 / 4.0)
    def testDiffSeqs(self):
        """Verify computation of AAI on two completely different sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'TGCA')
        self.assertAlmostEqual(score, 0.0)
    def testNonOverlappingSeqs(self):
        """Verify computation of AAI on two non-overlapping sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT----', '----TGCA')
        self.assertAlmostEqual(score, 0.0)
    def testDiffInsertionSeqs(self):
        """Verify computation of AAI on two different sequences with multiple insertions."""
        aai = AminoAcidIdentity()

        score = aai.aai('A-C-G-T', 'AACCGGT')
        self.assertAlmostEqual(score, 4.0 / 7.0)
    def testIdentiticalSeqs(self):
        """Verify computation of AAI on identical sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'ACGT')
        self.assertAlmostEqual(score, 1.0)
    def testSimilarSeqs(self):
        """Verify computation of AAI on two similar sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'ACGG')
        self.assertAlmostEqual(score, 3.0 / 4.0)
    def testIdenticalInsertionSeqs(self):
        """Verify computation of AAI on two identical sequences with multiple insertions."""
        aai = AminoAcidIdentity()

        score = aai.aai('A-C-G-T', 'A-C-G-T')
        self.assertAlmostEqual(score, 1.0)
    def testIncompleteSeqs(self):
        """Verify computation of AAI on incomplete sequence."""
        aai = AminoAcidIdentity()

        score = aai.aai('AAAACGTTTT', '---ACGG---')
        self.assertAlmostEqual(score, 3.0 / 4.0)
    def testPartialOverlappingSeqs(self):
        """Verify computation of AAI on two partially overlapping sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT--', '--GTAC')
        self.assertAlmostEqual(score, 1.0)
    def testNonOverlappingSeqs(self):
        """Verify computation of AAI on two non-overlapping sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT----', '----TGCA')
        self.assertAlmostEqual(score, 0.0)
    def testDiffSeqs(self):
        """Verify computation of AAI on two completely different sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'TGCA')
        self.assertAlmostEqual(score, 0.0)
    def testIdentiticalSeqs(self):
        """Verify computation of AAI on identical sequences."""
        aai = AminoAcidIdentity()

        score = aai.aai('ACGT', 'ACGT')
        self.assertAlmostEqual(score, 1.0)