Example #1
0
 def test_safe_mode(self):
     values = (
         # Premium 4
         (b"     0000  ",    0, 0, OperationModes.SAFE_ENTRY),
         (b"1    1234  ", 1234, 1, OperationModes.SAFE_ENTRY),
         (b"2    5678  ", 5678, 2, OperationModes.SAFE_ENTRY),
         (b"9    9999  ", 9999, 9, OperationModes.SAFE_ENTRY),
         (b"    NO CODE",    0, 0, OperationModes.SAFE_NO_CODE),
         # Premium 5
         (b"    0000   ",    0, 0, OperationModes.SAFE_ENTRY),
         (b"1   1234   ", 1234, 1, OperationModes.SAFE_ENTRY),
         (b"2   5678   ", 5678, 2, OperationModes.SAFE_ENTRY),
         (b"9   9999   ", 9999, 9, OperationModes.SAFE_ENTRY),
         # Premium 4 and 5
         (b"     SAFE  ", 1000, 0, OperationModes.SAFE_LOCKED),
         (b"1    SAFE  ", 1000, 1, OperationModes.SAFE_LOCKED),
         (b"2    SAFE  ", 1000, 2, OperationModes.SAFE_LOCKED),
         (b"9    SAFE  ", 1000, 9, OperationModes.SAFE_LOCKED),
     )
     for display, safe_code, safe_tries, mode in values:
         radio = Radio()
         radio.parse(display)
         self.assertEqual(radio.safe_code, safe_code)
         self.assertEqual(radio.safe_tries, safe_tries)
         self.assertEqual(radio.operation_mode, mode)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #2
0
 def test_ignores_blank(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.TUNER_PLAYING
     radio.display_mode = DisplayModes.SHOWING_OPERATION
     # parse display
     radio.parse(b" " * 11)
     self.assertEqual(radio.operation_mode,
         OperationModes.TUNER_PLAYING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #3
0
 def test_monsoon_premium_5(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.TUNER_PLAYING
     radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
     # parse display
     radio.parse(b"    MONSOON")
     self.assertEqual(radio.operation_mode,
         OperationModes.MONSOON)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #4
0
 def test_initial(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.TUNER_PLAYING
     radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
     # parse display
     radio.parse(b"    INITIAL")
     self.assertEqual(radio.operation_mode,
         OperationModes.INITIALIZING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #5
0
 def test_diag(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.TUNER_PLAYING
     radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
     # parse display
     radio.parse(b"     DIAG  ")
     self.assertEqual(radio.operation_mode,
         OperationModes.DIAGNOSTICS)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #6
0
 def test_tape_mss_rew(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 2
     # parse display
     radio.parse(b"TAPEMSS REW")
     self.assertEqual(radio.tape_side, 2)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_MSS_REW)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #7
0
 def test_tape_error(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 1
     # parse display
     radio.parse(b"TAPE ERROR ")
     self.assertEqual(radio.tape_side, 0)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_ERROR)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #8
0
 def test_tape_no_tape(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 1
     # parse display
     radio.parse(b"    NO TAPE")
     self.assertEqual(radio.tape_side, 0)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_NO_TAPE)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #9
0
 def test_tuner_fm_scan_on_unknown_band_sets_fm1(self):
     radio = Radio()
     self.assertEqual(radio.tuner_band, TunerBands.UNKNOWN)
     radio.parse(b"SCAN 879MHZ")
     self.assertEqual(radio.tuner_freq, 879)
     self.assertEqual(radio.tuner_preset, 0)
     self.assertEqual(radio.tuner_band, TunerBands.FM1)
     self.assertEqual(radio.operation_mode,
         OperationModes.TUNER_SCANNING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #10
0
 def test_tape_load_premium_5(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 1
     # parse display
     radio.parse(b"TAPE LOAD  ")
     self.assertEqual(radio.tape_side, 0)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_LOAD)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #11
0
 def test_tape_metal_premium_5(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 1
     radio.operation_mode = OperationModes.TAPE_PLAYING
     # parse display
     radio.parse(b"TAPE METAL ")
     self.assertEqual(radio.tape_side, 1)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_METAL)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #12
0
 def test_tape_play_a(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 2
     radio.operation_mode = OperationModes.TUNER_PLAYING
     # parse display
     radio.parse(b"TAPE PLAY A")
     self.assertEqual(radio.tape_side, 1)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_PLAYING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #13
0
 def test_tape_scan_b(self):
     radio = Radio()
     # set up known values
     radio.tape_side = 1
     radio.operation_mode = OperationModes.TUNER_PLAYING
     # parse display
     radio.parse(b"TAPE SCAN B")
     self.assertEqual(radio.tape_side, 2)
     self.assertEqual(radio.operation_mode,
         OperationModes.TAPE_SCANNING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #14
0
 def test_cd_playing(self):
     values = (
         (b"CD 1 TR 01 ", 1, 1),
         (b"CD 6 TR 99 ", 6, 99),
     )
     for display, disc, track in values:
         radio = Radio()
         radio.parse(display)
         self.assertEqual(radio.cd_disc, disc)
         self.assertEqual(radio.cd_track, track)
         self.assertEqual(radio.operation_mode,
             OperationModes.CD_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #15
0
 def test_tuner_fm_scan_on_fm2_band(self):
     radio = Radio()
     # set up known values
     radio.tuner_band = TunerBands.FM2
     radio.tuner_freq = 915
     radio.tuner_preset = 1
     # parse display
     radio.parse(b"SCAN1035MHZ")
     self.assertEqual(radio.tuner_freq, 1035)
     self.assertEqual(radio.tuner_preset, 0)
     self.assertEqual(radio.tuner_band, TunerBands.FM2)
     self.assertEqual(radio.operation_mode,
         OperationModes.TUNER_SCANNING)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #16
0
 def test_cd_cdx_no_cd(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.CD_PLAYING
     radio.cd_disc = 1
     radio.cd_track = 3
     radio.cd_track_pos = 99
     # parse display
     radio.parse(b"CD 2 NO CD ") # space in "CD 2"
     self.assertEqual(radio.cd_disc, 2)
     self.assertEqual(radio.cd_track, 0)
     self.assertEqual(radio.cd_track_pos, 0)
     self.assertEqual(radio.operation_mode,
         OperationModes.CD_CDX_NO_CD)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #17
0
 def test_tuner_am_scan_on(self):
     values = (
         (b"SCAN 530kHz",  530),
         (b"SCAN1710KHZ", 1710),
     )
     for display, freq in values:
         radio = Radio()
         radio.tuner_band = TunerBands.AM
         radio.parse(display)
         self.assertEqual(radio.tuner_freq, freq)
         self.assertEqual(radio.tuner_band, TunerBands.AM)
         self.assertEqual(radio.tuner_preset, 0)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_SCANNING)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #18
0
 def test_cd_no_magazine(self):
     radio = Radio()
     # set up known values
     radio.operation_mode = OperationModes.CD_PLAYING
     radio.cd_disc = 5
     radio.cd_track = 3
     radio.cd_track_pos = 99
     # parse display
     radio.parse(b"NO  MAGAZIN")
     self.assertEqual(radio.cd_disc, 0)
     self.assertEqual(radio.cd_track, 0)
     self.assertEqual(radio.cd_track_pos, 0)
     self.assertEqual(radio.operation_mode,
         OperationModes.CD_NO_MAGAZINE)
     self.assertEqual(radio.display_mode,
         DisplayModes.SHOWING_OPERATION)
Example #19
0
 def test_set_option_tape_skip(self):
     values = (
         (b"TAPE SKIP N", 0),
         (b"TAPE SKIP Y", 1),
     )
     for display, tape_skip in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
         # parse display
         radio.parse(display)
         self.assertEqual(radio.option_tape_skip, tape_skip)
         self.assertEqual(radio.operation_mode,
             OperationModes.SETTING_TAPE_SKIP)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #20
0
 def test_set_option_cd_mix(self):
     values = (
         (b"SET CD MIX1", 1),
         (b"SET CD MIX6", 6),
     )
     for display, cd_mix in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
         # parse display
         radio.parse(display)
         self.assertEqual(radio.option_cd_mix, cd_mix)
         self.assertEqual(radio.operation_mode,
             OperationModes.SETTING_CD_MIX)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #21
0
 def test_test_fern(self):
     values = (
         (b"FERN   OFF ", 0),
         (b"FERN   ON  ", 1),
     )
     for display, fern in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
         # parse display
         radio.parse(display)
         self.assertEqual(radio.test_fern, fern)
         self.assertEqual(radio.operation_mode,
             OperationModes.TESTING_FERN)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #22
0
 def test_tuner_am_scan_off(self):
     values = (
         (b"AM   670kHz",  670, 0),
         (b"AM   670KHZ",  670, 0),
         (b"AM  1540KHZ", 1540, 0),
         (b"AM 1 670KHZ",  670, 1),
         (b"AM 61540KHZ", 1540, 6),
         )
     for display, freq, preset in values:
         radio = Radio()
         radio.parse(display)
         self.assertEqual(radio.tuner_freq, freq)
         self.assertEqual(radio.tuner_preset, preset)
         self.assertEqual(radio.tuner_band, TunerBands.AM)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #23
0
 def test_test_rad(self):
     values = (
         (b"RAD 3CP T7 ", b"3CP T7 "), # Premium 4
         (b"RAD   DE2  ", b"  DE2  "), # Premium 5
         (b"RAD 0123456", b"0123456"),
     )
     for display, rad in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
         # parse display
         radio.parse(display)
         self.assertEqual(radio.test_rad, rad)
         self.assertEqual(radio.operation_mode,
             OperationModes.TESTING_RAD)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #24
0
 def test_test_ver(self):
     values = (
         (b"VER  0702  ", b" 0702  "), # Premium 4
         (b"VersA99CZ23", b"A99CZ23"), # Premium 5
         (b"VER ABCDEFG", b"ABCDEFG"),
     )
     for display, ver in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.ADJUSTING_SOUND_VOLUME
         # parse display
         radio.parse(display)
         self.assertEqual(radio.test_ver, ver)
         self.assertEqual(radio.operation_mode,
             OperationModes.TESTING_VER)
         self.assertEqual(radio.display_mode,
             DisplayModes.SHOWING_OPERATION)
Example #25
0
    def test_cd_cue_rev_pos(self):
        values = (
            (b"CUE   000  ", OperationModes.CD_CUE, 5, (0*60)+0),
            (b"CUE   001  ", OperationModes.CD_CUE, 5, (0*60)+1),
            (b"CUE   012  ", OperationModes.CD_CUE, 5, (0*60)+12),
            (b"CUE   123  ", OperationModes.CD_CUE, 5, (1*60)+23),
            (b"CUE  1234  ", OperationModes.CD_CUE, 5, (12*60)+34),
            (b"CUE  9999  ", OperationModes.CD_CUE, 5, (99*60)+99),
            (b"CUE  -002  ", OperationModes.CD_CUE, 5, 0),
            (b"CUE -1234  ", OperationModes.CD_CUE, 5, 0),

            (b"REV   000  ", OperationModes.CD_REV, 5, (0*60)+0),
            (b"REV   001  ", OperationModes.CD_REV, 5, (0*60)+1),
            (b"REV   012  ", OperationModes.CD_REV, 5, (0*60)+12),
            (b"REV   123  ", OperationModes.CD_REV, 5, (1*60)+23),
            (b"REV  1234  ", OperationModes.CD_REV, 5, (12*60)+34),
            (b"REV  9999  ", OperationModes.CD_REV, 5, (99*60)+99),
            (b"REV  -002  ", OperationModes.CD_REV, 5, 0),
            (b"REV -1234  ", OperationModes.CD_REV, 5, 0),

            (b"CD 2  000  ", OperationModes.CD_PLAYING, 2, (0*60)+0),
            (b"CD 2  001  ", OperationModes.CD_PLAYING, 2, (0*60)+1),
            (b"CD 2  012  ", OperationModes.CD_PLAYING, 2, (0*60)+12),
            (b"CD 2  123  ", OperationModes.CD_PLAYING, 2, (1*60)+23),
            (b"CD 2 1234  ", OperationModes.CD_PLAYING, 2, (12*60)+34),
            (b"CD 2 9999  ", OperationModes.CD_PLAYING, 2, (99*60)+99),
            (b"CD 2 -002  ", OperationModes.CD_PLAYING, 2, 0),
            (b"CD 2-1234  ", OperationModes.CD_PLAYING, 2, 0),
        )
        for display, operation_mode, cd_disc, cd_track_pos in values:
            radio = Radio()
            # set up known values
            radio.operation_mode = OperationModes.CD_PLAYING
            radio.cd_disc = 5
            radio.cd_track = 12
            # parse display
            radio.parse(display)
            self.assertEqual(radio.cd_disc, cd_disc)
            self.assertEqual(radio.cd_track, 12)
            self.assertEqual(radio.cd_track_pos, cd_track_pos)
            self.assertEqual(radio.operation_mode,
                operation_mode)
            self.assertEqual(radio.display_mode,
                DisplayModes.SHOWING_OPERATION)
Example #26
0
 def test_sound_treble(self):
     values = (
         (b"TREB  - 9  ", -9),
         (b"TREB  - 1  ", -1),
         (b"TREB    0  ", 0),
         (b"TREB  + 1  ", 1),
         (b"TREB  + 9  ", 9),
     )
     for display, treble in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.SHOWING_OPERATION
         # parse display
         radio.parse(display)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.ADJUSTING_SOUND_TREBLE)
         self.assertEqual(radio.sound_treble, treble)
Example #27
0
 def test_sound_midrange_premium_5(self):
     values = (
         (b"MID   - 9  ", -9),
         (b"MID   - 1  ", -1),
         (b"MID     0  ", 0),
         (b"MID   + 1  ", 1),
         (b"MID   + 9  ", 9),
     )
     for display, mid in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.SHOWING_OPERATION
         # parse display
         radio.parse(display)
         self.assertEqual(radio.sound_midrange, mid)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.ADJUSTING_SOUND_MIDRANGE)
Example #28
0
 def test_sound_bass(self):
     values = (
         (b"BASS  - 9  ", -9),
         (b"BASS  - 1  ", -1),
         (b"BASS    0  ", 0),
         (b"BASS  + 1  ", 1),
         (b"BASS  + 9  ", 9),
     )
     for display, bass in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.SHOWING_OPERATION
         # parse display
         radio.parse(display)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.ADJUSTING_SOUND_BASS)
         self.assertEqual(radio.sound_bass, bass)
Example #29
0
 def test_sound_balance(self):
     values = (
         (b"BAL LEFT  9", -9),
         (b"BAL LEFT  1", -1),
         (b"BAL CENTER ", 0),
         (b"BAL RIGHT 1", 1),
         (b"BAL RIGHT 9", 9),
     )
     for display, balance in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.SHOWING_OPERATION
         # parse display
         radio.parse(display)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.ADJUSTING_SOUND_BALANCE)
         self.assertEqual(radio.sound_balance, balance)
Example #30
0
 def test_sound_fade(self):
     values = (
         (b"FADEREAR  9", -9),
         (b"FADEREAR  1", -1),
         (b"FADECENTER ", 0),
         (b"FADEFRONT 1", 1),
         (b"FADEFRONT 9", 9),
     )
     for display, fade in values:
         radio = Radio()
         # set up known values
         radio.operation_mode = OperationModes.TUNER_PLAYING
         radio.display_mode = DisplayModes.SHOWING_OPERATION
         # parse display
         radio.parse(display)
         self.assertEqual(radio.operation_mode,
             OperationModes.TUNER_PLAYING)
         self.assertEqual(radio.display_mode,
             DisplayModes.ADJUSTING_SOUND_FADE)
         self.assertEqual(radio.sound_fade, fade)