__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
# -*- test-case-name: twisted.conch.test.test_text -*-
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.conch.insults import text
from twisted.conch.insults.text import attributes as A
from twisted.trial import unittest
class FormattedTextTests(unittest.TestCase):
"""
Tests for assembling formatted text.
"""
def test_trivial(self) -> None:
"""
Using no formatting attributes produces no VT102 control sequences in
the flattened output.
"""
self.assertEqual(
text.assembleFormattedText(A.normal["Hello, world."]), "Hello, world."
)
def test_bold(self) -> None:
"""
The bold formatting attribute, L{A.bold}, emits the VT102 control
sequence to enable bold when flattened.
"""
self.assertEqual(
text.assembleFormattedText(A.bold["Hello, world."]), "\x1b[1mHello, world."
)
def test_underline(self) -> None:
"""
The underline formatting attribute, L{A.underline}, emits the VT102
control sequence to enable underlining when flattened.
"""
self.assertEqual(
text.assembleFormattedText(A.underline["Hello, world."]),
"\x1b[4mHello, world.",
)
def test_blink(self) -> None:
"""
The blink formatting attribute, L{A.blink}, emits the VT102 control
sequence to enable blinking when flattened.
"""
self.assertEqual(
text.assembleFormattedText(A.blink["Hello, world."]), "\x1b[5mHello, world."
)
def test_reverseVideo(self) -> None:
"""
The reverse-video formatting attribute, L{A.reverseVideo}, emits the
VT102 control sequence to enable reversed video when flattened.
"""
self.assertEqual(
text.assembleFormattedText(A.reverseVideo["Hello, world."]),
"\x1b[7mHello, world.",
)
def test_minus(self) -> None:
"""
Formatting attributes prefixed with a minus (C{-}) temporarily disable
the prefixed attribute, emitting no VT102 control sequence to enable
it in the flattened output.
"""
self.assertEqual(
text.assembleFormattedText(
A.bold[A.blink["Hello", -A.bold[" world"], "."]]
),
"\x1b[1;5mHello\x1b[0;5m world\x1b[1;5m.",
)
def test_foreground(self) -> None:
"""
The foreground color formatting attribute, L{A.fg}, emits the VT102
control sequence to set the selected foreground color when flattened.
"""
self.assertEqual(
text.assembleFormattedText(
A.normal[A.fg.red["Hello, "], A.fg.green["world!"]]
),
"\x1b[31mHello, \x1b[32mworld!",
)
def test_background(self) -> None:
"""
The background color formatting attribute, L{A.bg}, emits the VT102
control sequence to set the selected background color when flattened.
"""
self.assertEqual(
text.assembleFormattedText(
A.normal[A.bg.red["Hello, "], A.bg.green["world!"]]
),
"\x1b[41mHello, \x1b[42mworld!",
)
def test_flattenDeprecated(self) -> None:
"""
L{twisted.conch.insults.text.flatten} emits a deprecation warning when
imported or accessed.
"""
warningsShown = self.flushWarnings([self.test_flattenDeprecated])
self.assertEqual(len(warningsShown), 0)
# Trigger the deprecation warning.
text.flatten
warningsShown = self.flushWarnings([self.test_flattenDeprecated])
self.assertEqual(len(warningsShown), 1)
self.assertEqual(warningsShown[0]["category"], DeprecationWarning)
self.assertEqual(
warningsShown[0]["message"],
"twisted.conch.insults.text.flatten was deprecated in Twisted "
"13.1.0: Use twisted.conch.insults.text.assembleFormattedText "
"instead.",
)
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 14 B | 0644 |
|
| keydata.py | File | 32.41 KB | 0644 |
|
| loopback.py | File | 706 B | 0644 |
|
| test_address.py | File | 1.65 KB | 0644 |
|
| test_agent.py | File | 12.78 KB | 0644 |
|
| test_cftp.py | File | 50.31 KB | 0644 |
|
| test_channel.py | File | 12.53 KB | 0644 |
|
| test_checkers.py | File | 30.28 KB | 0644 |
|
| test_ckeygen.py | File | 27.29 KB | 0644 |
|
| test_conch.py | File | 25.04 KB | 0644 |
|
| test_connection.py | File | 28.57 KB | 0644 |
|
| test_default.py | File | 11.28 KB | 0644 |
|
| test_endpoints.py | File | 54.51 KB | 0644 |
|
| test_filetransfer.py | File | 31.37 KB | 0644 |
|
| test_forwarding.py | File | 2.14 KB | 0644 |
|
| test_helper.py | File | 20.44 KB | 0644 |
|
| test_insults.py | File | 31.38 KB | 0644 |
|
| test_keys.py | File | 64.35 KB | 0644 |
|
| test_knownhosts.py | File | 48.3 KB | 0644 |
|
| test_manhole.py | File | 13.21 KB | 0644 |
|
| test_manhole_tap.py | File | 4.18 KB | 0644 |
|
| test_mixin.py | File | 1.13 KB | 0644 |
|
| test_openssh_compat.py | File | 4.78 KB | 0644 |
|
| test_recvline.py | File | 24.52 KB | 0644 |
|
| test_scripts.py | File | 1.9 KB | 0644 |
|
| test_session.py | File | 44.72 KB | 0644 |
|
| test_ssh.py | File | 33.05 KB | 0644 |
|
| test_tap.py | File | 5.16 KB | 0644 |
|
| test_telnet.py | File | 26.18 KB | 0644 |
|
| test_text.py | File | 4 KB | 0644 |
|
| test_transport.py | File | 109.5 KB | 0644 |
|
| test_unix.py | File | 4.29 KB | 0644 |
|
| test_userauth.py | File | 32.72 KB | 0644 |
|
| test_window.py | File | 2.18 KB | 0644 |
|