Example #1
0
    def test_from_index_and_length(self, glucagon_peptides, glucagon_seq):
        # simple tests
        index = self.protein_seq.index(self.pep_seq)
        p = SequenceRange.from_index(index, length=len(self.pep_seq))
        self._assert(p, self.pep_seq, self.protein_seq)

        # all peptides
        for (start, stop, seq) in glucagon_peptides:
            p = SequenceRange.from_index(glucagon_seq.index(seq),
                                         length=len(seq))
            self._assert(p, seq, glucagon_seq)

        with pytest.raises(ValueError):
            SequenceRange.from_index(SequenceRange(10), length=20)
Example #2
0
File: protein.py Project: jancr/ppv
 def get_clusters(cls, h_cluster):
     clusters = {}
     for n_clust in range(1, h_cluster.max() + 1):
         cluster_indexes = np.where(h_cluster == n_clust)[0]
         clusters[n_clust] = SequenceRange.from_index(
             cluster_indexes[0], cluster_indexes[-1])
     return clusters
Example #3
0
    def test___repr__(self):
        assert repr(SequenceRange(10, 20)) == "SequenceRange(10, 20, seq=None)"
        seq = "A" * 11
        assert repr(SequenceRange(10, 20, seq=seq)) == \
            'SequenceRange(10, 20, seq="{}")'.format(seq)

        assert repr(SequenceRange(10, 20).pos) == "(10, 20)"
        assert repr(SequenceRange.from_index(10, 20).index) == "(10, 20)"
Example #4
0
    def test_from_index(self, glucagon_peptides, glucagon_seq):
        pep_start_index = 5
        pep_stop_index = 8
        p_index = SequenceRange.from_index(pep_start_index, pep_stop_index)
        p_index2 = SequenceRange.from_index((pep_start_index, pep_stop_index))
        assert p_index == p_index2

        p = SequenceRange(self.pep_start, self.pep_stop)
        assert p == p_index
        assert self.pep_seq[0] == self.protein_seq[p_index.start.index]
        assert self.pep_seq[-1] == self.protein_seq[p_index.stop.index]

        with pytest.raises(ValueError):
            SequenceRange.from_index(SequenceRange(10), 10)
        with pytest.raises(ValueError):
            SequenceRange.from_index(10, SequenceRange(10))
        with pytest.raises(ValueError):
            SequenceRange.from_index(SequenceRange(10), SequenceRange(10))