Sha256: 40928087883a6442fe527c07dc15787637af2f5282fcde4636a9189f002c033d

Contents?: true

Size: 1.09 KB

Versions: 93

Compression:

Stored size: 1.09 KB

Contents

# -*- coding: utf-8 -*-
from __future__ import unicode_literals

import unittest

from run_length import encode, decode


class WordCountTests(unittest.TestCase):

    def test_encode(self):
        self.assertMultiLineEqual('2A3B4C', encode('AABBBCCCC'))

    def test_decode(self):
        self.assertMultiLineEqual('AABBBCCCC', decode('2A3B4C'))

    def test_encode_with_single(self):
        self.assertMultiLineEqual(
            '12WB12W3B24WB',
            encode('WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB'))

    def test_decode_with_single(self):
        self.assertMultiLineEqual(
            'WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB',
            decode('12WB12W3B24WB'))

    def test_combination(self):
        self.assertMultiLineEqual('zzz ZZ  zZ', decode(encode('zzz ZZ  zZ')))

    def test_encode_unicode_s(self):
        self.assertMultiLineEqual('⏰3⚽2⭐⏰', encode('⏰⚽⚽⚽⭐⭐⏰'))

    def test_decode_unicode(self):
        self.assertMultiLineEqual('⏰⚽⚽⚽⭐⭐⏰', decode('⏰3⚽2⭐⏰'))


if __name__ == '__main__':
    unittest.main()

Version data entries

93 entries across 93 versions & 1 rubygems

Version Path
trackler-2.0.8.18 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.17 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.16 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.15 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.14 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.13 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.12 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.11 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.10 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.9 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.8 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.7 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.6 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.5 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.4 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.3 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.2 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.8.1 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.7.0 tracks/python/exercises/run-length-encoding/run_length_test.py
trackler-2.0.6.44 tracks/python/exercises/run-length-encoding/run_length_test.py