Beispiel #1
0
    def test_barcode3(self):
        barcodes5 = [
            'NATN',
            'NNCAN',
            'NNCAN',
        ]
        barcodes3 = [
            'NNTAG',
            'NNGT',
            '.',
        ]

        barcodes = demultiplex.prepare_barcodes(barcodes5, barcodes3)
        index = demultiplex.create_index(barcodes)
        self.assertEqual(
            index, {
                1: {
                    'A': {barcodes5[0]}
                },
                2: {
                    'T': {barcodes5[0]},
                    'C': {barcodes5[1]},
                },
                3: {
                    'A': {barcodes5[1]},
                },
            })

        index3 = demultiplex.create_index(barcodes['NATN']['barcodes3'])
        self.assertEqual(
            index3, {
                -3: {
                    'T': {barcodes3[0]},
                },
                -2: {
                    'A': {barcodes3[0]},
                },
                -1: {
                    'G': {barcodes3[0]},
                },
            })

        index3 = demultiplex.create_index(barcodes['NNCAN']['barcodes3'])
        self.assertEqual(index3, {
            -2: {
                'G': {barcodes3[1]},
            },
            -1: {
                'T': {barcodes3[1]},
            },
        })
Beispiel #2
0
    def test_barcode_size_diff(self):
        barcodes5 = [
            'NATAN',
            'NNNCAGN',
        ]
        barcodes = demultiplex.prepare_barcodes(barcodes5, None)

        index = demultiplex.create_index(barcodes)
        expected = {
            1: {
                'A': {barcodes5[0]}
            },
            2: {
                'T': {barcodes5[0]}
            },
            3: {
                'A': {barcodes5[0]},
                'C': {barcodes5[1]},
            },
            4: {
                'A': {barcodes5[1]},
            },
            5: {
                'G': {barcodes5[1]},
            },
        }
        self.assertEqual(index, expected)
Beispiel #3
0
    def test_create_index_simple(self):
        barcodes5 = [
            'NNAAAN',
            'NNACTN',
            'NNACGN',
        ]
        barcodes = demultiplex.prepare_barcodes(barcodes5, None)

        index = demultiplex.create_index(barcodes)
        expected = {
            2: {
                'A': {barcodes5[0], barcodes5[1], barcodes5[2]}
            },
            3: {
                'A': {barcodes5[0]},
                'C': {barcodes5[1], barcodes5[2]},
            },
            4: {
                'A': {barcodes5[0]},
                'T': {barcodes5[1]},
                'G': {barcodes5[2]},
            },
        }
        self.assertEqual(index, expected)