#!/usr/bin/python """Test of line navigation output of Firefox.""" from macaroon.playback import * import utils sequence = MacroSequence() #sequence.append(WaitForDocLoad()) sequence.append(PauseAction(5000)) # Work around some new quirk in Gecko that causes this test to fail if # run via the test harness rather than manually. sequence.append(KeyComboAction("r")) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Home")) sequence.append(utils.AssertPresentationAction( "1. Top of file", ["BRAILLE LINE: 'Start'", " VISIBLE: 'Start', cursor=1", "SPEECH OUTPUT: 'Start'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Down")) sequence.append(utils.AssertPresentationAction( "2. Line Down", ["BRAILLE LINE: 'line 1'", " VISIBLE: 'line 1', cursor=1", "SPEECH OUTPUT: 'line 1'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Down")) sequence.append(utils.AssertPresentationAction( "3. Line Down", ["BRAILLE LINE: 'line 2'", " VISIBLE: 'line 2', cursor=1", "SPEECH OUTPUT: 'line 2'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Down")) sequence.append(utils.AssertPresentationAction( "4. Line Down", ["BRAILLE LINE: 'line 3'", " VISIBLE: 'line 3', cursor=1", "SPEECH OUTPUT: 'line 3'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Down")) sequence.append(utils.AssertPresentationAction( "5. Line Down", ["BRAILLE LINE: 'line 4'", " VISIBLE: 'line 4', cursor=1", "SPEECH OUTPUT: 'line 4'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Down")) sequence.append(utils.AssertPresentationAction( "6. Line Down", ["BRAILLE LINE: 'End'", " VISIBLE: 'End', cursor=1", "SPEECH OUTPUT: 'End'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Up")) sequence.append(utils.AssertPresentationAction( "7. Line Up", ["BRAILLE LINE: 'line 4'", " VISIBLE: 'line 4', cursor=1", "SPEECH OUTPUT: 'line 4'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Up")) sequence.append(utils.AssertPresentationAction( "8. Line Up", ["BRAILLE LINE: 'line 3'", " VISIBLE: 'line 3', cursor=1", "SPEECH OUTPUT: 'line 3'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Up")) sequence.append(utils.AssertPresentationAction( "9. Line Up", ["BRAILLE LINE: 'line 2'", " VISIBLE: 'line 2', cursor=1", "SPEECH OUTPUT: 'line 2'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Up")) sequence.append(utils.AssertPresentationAction( "10. Line Up", ["BRAILLE LINE: 'line 1'", " VISIBLE: 'line 1', cursor=1", "SPEECH OUTPUT: 'line 1'"])) sequence.append(utils.StartRecordingAction()) sequence.append(KeyComboAction("Up")) sequence.append(utils.AssertPresentationAction( "11. Line Up", ["BRAILLE LINE: 'Start'", " VISIBLE: 'Start', cursor=1", "SPEECH OUTPUT: 'Start'"])) sequence.append(utils.AssertionSummaryAction()) sequence.start()