def test_SecureQLabel_get_elided_text_only_returns_oneline_elided(mocker): # 70 character string string_with_newline = ('this is a string\n with a newline') sl = SecureQLabel(string_with_newline, wordwrap=False, max_length=38) elided_text = sl.get_elided_text(string_with_newline) assert sl.text() == elided_text assert '...' in elided_text
def test_SecureQLabel_get_elided_text_short_string(mocker): # 70 character string long_string = '123456789' sl = SecureQLabel(long_string, wordwrap=False, max_length=100) elided_text = sl.get_elided_text(long_string) assert sl.text() == elided_text assert elided_text == '123456789'
def test_SecureQLabel_init_wordwrap(mocker): ''' Regression test to make sure we don't remove newlines. ''' long_string = ( '1234567890123456789012345678901234567890123456789012345678901234567890\n' '12345678901') sl = SecureQLabel(long_string, wordwrap=False) assert sl.text() == long_string
def test_SecureQLabel_setText(mocker): sl = SecureQLabel("hello") assert sl.text() == "hello" label_text = '<script>alert("hi!");</script>' sl.setTextFormat = mocker.MagicMock() sl.setText(label_text) assert sl.text() == label_text # Ensure *safe* plain text with no HTML entities. sl.setTextFormat.assert_called_once_with(Qt.PlainText)
def test_SecureQLabel_setText(): sl = SecureQLabel("hello") assert sl.text() == "hello" label_text = '<script>alert("hi!");</script>' sl.setText(label_text) assert sl.text() == html.escape(label_text, quote=False)
def test_SecureQLabel_quotes_not_escaped_for_readability(): sl = SecureQLabel("'hello'") assert sl.text() == "'hello'"
def test_SecureQLabel_init_no_wordwrap(mocker): long_string = ( '1234567890123456789012345678901234567890123456789012345678901234567890\n' '12345678901') sl = SecureQLabel(long_string, wordwrap=False) assert sl.text() == long_string
def test_SecureQLabel_init(): label_text = '<script>alert("hi!");</script>' sl = SecureQLabel(label_text) assert sl.text() == label_text
def test_SecureQLabel_init(): label_text = '<script>alert("hi!");</script>' sl = SecureQLabel(label_text) assert sl.text() == html.escape(label_text, quote=False)