-
Notifications
You must be signed in to change notification settings - Fork 205
text and markdown formats #1949
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
👋 @ofek1weiss |
|
""" WalkthroughThis update introduces new modules for formatting structured message content as Markdown and plain text, each with customizable styles for tables and icons. It also adds comprehensive unit tests and fixtures for both formats, including expected output files. Test utilities are refactored to support text-based assertions and file path management. Additionally, Pydantic model rebuilding is updated to use Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant Formatter (Markdown/Text)
participant MessageBody
participant Output
User->>Formatter: format(message: MessageBody)
Formatter->>MessageBody: Read blocks
loop For each block
Formatter->>Formatter: format_block(block)
end
Formatter->>Output: Return formatted string
Poem
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 6
♻️ Duplicate comments (2)
tests/unit/messages/formats/markdown/fixtures/simple_header.md (1)
1-1: Same content ascolored_header.mdSee previous comment; the duplication may be accidental.
tests/unit/messages/formats/markdown/fixtures/table_block_8_5.md (1)
1-9: Same fenced-code concern as the 1-column variantThe 5-column table is also inside a fenced block, so it will not render as a Markdown table.
Confirm that treating it as preformatted text is what you want; otherwise convert to pipe syntax.
🧹 Nitpick comments (69)
tests/unit/messages/formats/text/fixtures/text_length_200.txt (1)
1-1: Consider appending a trailing newline
Some diff-viewers and POSIX tooling expect text files to end with\n. Adding it can prevent “No newline at end of file” warnings during future diffs.tests/unit/messages/formats/markdown/fixtures/text_length_200.md (1)
1-1: Missing final newline
For consistency with other fixtures and smoother diff outputs, add a newline at EOF.tests/unit/messages/formats/text/fixtures/text_length_50.txt (1)
1-1: EOF newline
Same nit as above—add\nat the end to keep fixtures uniform.tests/unit/messages/formats/markdown/fixtures/code_block_200.md (1)
1-3: Specify a language for fenced code block
If this block is meant to render as plain text, consider using “```text” to suppress syntax-highlighting noise in some Markdown renderers.-``` +```texttests/unit/messages/formats/text/fixtures/text_length_500.txt (1)
1-1: Add newline at EOF
Keeps fixture formatting consistent and avoids minor diff annoyances.tests/unit/messages/formats/text/fixtures/table_block_8_4.txt (1)
1-7: Add trailing newline for consistent fixture formattingThe file terminates without a final newline. While this is harmless at runtime, it breaks POSIX text-file conventions and can cause noisy diffs in future edits.
Lorem ip Lorem ip Lorem ip Lorem ip +tests/unit/messages/formats/text/fixtures/code_block_200.txt (1)
1-1: Terminate the fixture with a newlineSame remark as the other fixtures—append a
\nto avoid “No newline at end of file” git warnings and keep formatting consistent across all test assets.Lorem ipsum dolor sit amet, c +tests/unit/messages/formats/text/fixtures/text_styles.txt (1)
1-1: Insert final newlineFor uniformity with the markdown counterparts and to silence diff tools, add a trailing newline.
Normal text Bold text Italic text +tests/unit/messages/formats/text/fixtures/table_block_8_1.txt (1)
1-7: Consistent EOF newlineAll table fixtures should follow the same formatting rules—append a newline character after the last row.
Lorem ip +tests/unit/messages/formats/text/fixtures/table_block_8_5.txt (1)
1-7: Follow POSIX text-file conventionAdd a newline at the end to align with tooling expectations and maintain consistency with other fixture files.
Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip +tests/unit/messages/formats/text/fixtures/text_length_1000.txt (1)
1-1: Add a terminating newline to comply with POSIX text-file conventionMany tools (git, POSIX utilities, some editors) expect a newline at the end of every text file. Absence of the final
\noccasionally leads to noisy diffs or truncated output when concatenating files.-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con\ntests/unit/messages/formats/text/fixtures/table_block_30_2.txt (1)
1-7: Terminate file with newline for consistencySame rationale as above; inserting a trailing
\nkeeps fixtures uniform and avoids editor warnings.tests/unit/messages/formats/text/fixtures/table_block_8_2.txt (1)
1-7: Missing newline at EOFAdd a final newline to conform with common tooling expectations.
tests/unit/messages/formats/text/fixtures/code_block_500.txt (1)
1-1: EOF newline recommendedInsert
\nat the end for portability and cleaner diffs.tests/unit/messages/formats/text/fixtures/bullet_list.txt (1)
1-4: End-of-file newlineMinor consistency tweak—append a newline.
tests/unit/messages/formats/markdown/fixtures/code_block_500.md (1)
3-3: Terminate file with a trailing newline
POSIX-style tools and some git diff viewers warn when the final line of a file is not newline-terminated. Adding a single\nafter the closing back-tick fence avoids those warnings while not affecting the fixture’s semantics.Lorem ipsum dolor sit amet, consectetur adip
</blockquote></details> <details> <summary>tests/unit/messages/formats/markdown/fixtures/text_length_500.md (1)</summary><blockquote> `1-1`: **Add trailing newline for cleaner diffs** The long-text fixture currently ends without `\n`. Appending one keeps consistency with most other fixtures and prevents “No newline at end of file” diff noise. ```diff -Lorem ipsum dolor sit amet, consectetur adip +Lorem ipsum dolor sit amet, consectetur adip⏎tests/unit/messages/formats/text/fixtures/table_block_30_4.txt (1)
7-7: Consider ending file with newline
Same rationale as above—helps avoid diff warnings and keeps fixtures uniform.tests/unit/messages/formats/text/fixtures/table_block_30_5.txt (1)
7-7: Trailing newline missing
Optional but recommended for consistency with other text fixtures.tests/unit/messages/formats/text/fixtures/nested_expandable.txt (1)
5-5: Minor: add newline at EOF
Adds consistency and avoids diff tooling warnings; no functional impact on the test.tests/unit/messages/formats/text/fixtures/table_block_30_3.txt (1)
1-7: Add a trailing newline to comply with POSIX text-file conventionThe fixture appears to lack a final line-feed. A newline at EOF avoids subtle diffs and keeps
cat/printfoutput predictable.Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co +tests/unit/messages/formats/text/fixtures/table_block_200_2.txt (1)
1-7: Terminate the file with\nThe file ends directly after the last character, which breaks the standard “one line = one record” expectation of many tools and can trigger noisy diffs. Appending a single LF avoids that.
tests/unit/messages/formats/text/fixtures/all_blocks_no_color.txt (1)
1-10: Missing newline at end of fileFor consistency across all fixtures (and to keep Git diffs cleaner), add a trailing newline.
tests/unit/messages/formats/text/fixtures/all_icons.txt (1)
1-1: Ensure a final newlineSame rationale as the other fixtures—append
\nafter the last emoji to conform to POSIX text-file rules.tests/unit/messages/formats/markdown/fixtures/table_block_200_1.md (1)
1-9: Add newline after closing code fenceThe closing ``` is the final byte in the file. A trailing newline prevents spurious Git warnings and aligns with Markdown editors that expect one.
</blockquote></details> <details> <summary>tests/unit/messages/formats/text/fixtures/table_block_200_5.txt (1)</summary><blockquote> `1-5`: **Consider shortening placeholder text to curb repository bloat** Each line is ~400 chars; five-column variants bring the file above 10 KB. For fixtures the exact wording rarely matters—trimming the “Lorem ipsum …” repetitions would keep diffs and repo size lighter. </blockquote></details> <details> <summary>tests/unit/messages/formats/text/fixtures/all_blocks_red.txt (1)</summary><blockquote> `10-10`: **Insert final newline** Same rationale as earlier—helps keep diffs clean and tools happy. </blockquote></details> <details> <summary>tests/unit/messages/formats/text/fixtures/table_block_200_3.txt (1)</summary><blockquote> `7-7`: **Missing newline at EOF** Add `\n` after the last row to align with repo conventions. </blockquote></details> <details> <summary>tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md (2)</summary><blockquote> `1-1`: **Specify language for the fenced block to satisfy MD040** Markdown-lint flags the fence―add a language identifier (`text` is fine) so editors apply syntax highlighting and the linter passes. ```diff -``` +```text
9-9: Terminate file with newlineAdd a trailing newline for consistency with other fixtures.
tests/unit/messages/formats/markdown/fixtures/fact_list.md (1)
1-1: Append newline at EOFMinor but prevents “No newline at end of file” warnings in diffs.
tests/unit/messages/formats/markdown/fixtures/colored_header.md (1)
1-1: Fixture name implies colored output but no color markup presentThe file is identical to
simple_header.mdand contains no color-related Markdown (e.g., HTML<span style="color:…">). Either merge the two fixtures or add the intended color formatting so the name reflects the content.-# Test Header +# <span style="color:green">Test Header</span>tests/unit/messages/formats/markdown/fixtures/table_block_8_2.md (1)
1-9: Leading blank line prevents Markdown table detectionMost parsers require the header row to start immediately. The initial blank line (line 1) causes the table to render as plain text.
- Column 0 Column 1 ---------- ---------- Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip Lorem ip Lorem iptests/unit/messages/formats/text/fixtures/whitespace_block.txt (1)
1-2: Consider adding trailing newline for POSIX-friendly text filesA final newline avoids edge-case diffs and tooling warnings, especially on Unix systems.
This should be indented +\ntests/unit/messages/formats/markdown/fixtures/bullet_list.md (1)
1-5: Ensure list items share the same Markdown markerLines 1–2 use the
-marker while lines 4–5 rely on the check-mark emoji alone.
Many renderers do not treat the latter as list items, so the list may split into two separate paragraphs.
Consider prefixing the checked rows with the same dash (or with- [x]) to keep the list structure intact:- First bullet - Second bullet -- ✅ Check item 1\ -- ✅ Check item 2 + - ✅ Check item 1 + - ✅ Check item 2tests/unit/messages/formats/markdown/fixtures/expandable_block.md (1)
1-2: Line-break escape may be brittleUsing the backslash at the end of line 1 triggers a hard line-break only in some Markdown flavours.
<br>or two trailing spaces is more portable:-**Show More**\ +**Show More**tests/unit/messages/formats/text/fixtures/table_block_30_1.txt (1)
1-7: Add trailing newline for POSIX friendlinessThe fixture lacks a final newline.
While not functionally critical, many tools and editors expect files to end with\n, and its absence can cause noisy diffs.Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co Lorem ipsum dolor sit amet, co +tests/unit/alerts/alert_messages/test_alert_utils.py (2)
323-326:format_adaptive_cardalready returns JSON-serialisable dicts – no need to wrap
assert_expected_jsonexpects adict, andformat_adaptive_cardalready returns one.
You can pass it directly without the extra variable to keep the code tight:- adaptive_card_json = format_adaptive_card(message_body) - expected_adaptive_card_json_path = get_expected_file_path( + expected_adaptive_card_json_path = get_expected_file_path( FIXTURES_DIR / "adaptive_card", adaptive_card_filename ) - assert_expected_json(adaptive_card_json, expected_adaptive_card_json_path) + assert_expected_json(format_adaptive_card(message_body), expected_adaptive_card_json_path)
348-353: Order-of-operations nit – compute fixture path before possible Slack sendMinor readability tweak – build the expected path before the (optional) Slack branch so the main assertion logic sits together:
- if "TEST_SLACK_TOKEN" in os.environ and "TEST_SLACK_CHANNEL" in os.environ: + expected_block_kit_json_path = get_expected_file_path( + FIXTURES_DIR / "block_kit", block_kit_filename + ) + + if "TEST_SLACK_TOKEN" in os.environ and "TEST_SLACK_CHANNEL" in os.environ: ... - expected_block_kit_json_path = get_expected_file_path( - FIXTURES_DIR / "block_kit", block_kit_filename - )tests/unit/messages/formats/block_kit/test_block_kit.py (1)
23-24: Unnecessary indirection – delegate to base class
BaseTestFormatalready definesget_expected_file_pathas abstract.
If all concrete format tests share the same implementation, move this helper to the base class instead of duplicating it here and in every future subclass.tests/unit/messages/formats/markdown/fixtures/text_styles.md (1)
1-1: Missing trailing newlineSome diff tools and editors warn when the last line of a text file is not terminated with
\n.
Consider adding a newline to keep fixtures consistent and avoid spurious diffs.tests/unit/messages/formats/text/fixtures/divider_blocks.txt (1)
1-3: Fixture hard-codes 32 dashes – brittle if rendering width changesIf the divider length in the formatter becomes configurable, this exact character count will start failing the test for reasons unrelated to functionality.
Recommend expressing the expected divider via helper or regex in the test rather than a literal fixed-width line.tests/unit/messages/formats/markdown/fixtures/table_block_30_4.md (1)
1-1: Specify a language on the fenced code block to silence MD040
markdownlintflags code blocks without a language.
Adding even a generic identifier liketextkeeps the fixture content unchanged while satisfying the linter.-``` +```texttests/unit/messages/formats/markdown/fixtures/code_block_50.md (1)
1-1: Add a language identifier to the code fenceSame MD040 warning here.
A minimal fix:-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_8_4.md (1)
1-1: Provide a language for the fenced blockConsistent with other fixtures and avoids markdown-lint errors.
-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_30_1.md (1)
1-1: Label the code fence with a languagePrevents MD040 violations and keeps tooling quiet.
-``` +```texttests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md (1)
12-13: Minor: prefer double-space line breaks over trailing backslashGitHub Markdown supports the backslash, but two trailing spaces are more widely recognised.
No action needed if the current style is intentional.tests/unit/messages/formats/markdown/fixtures/divider_blocks.md (1)
5-5: Add a trailing newline for POSIX-style complianceThe file lacks a final newline, which some diff tools and linters flag.
Consider appending a\nafter the last line to avoid nit-level warnings.tests/unit/messages/formats/text/fixtures/table_block_200_1.txt (2)
2-2: Very long separator line may exceed typical terminal widthAt ~200 chars this dash line is fine for snapshot testing, but can make diffs unwieldy.
Not blocking, just flagging in case width can be reduced without affecting coverage.
3-7: Missing trailing newlineLike other fixtures, appending a newline at EOF avoids noisy git warnings.
tests/unit/messages/formats/markdown/fixtures/all_icons.md (1)
1-1: Add a trailing newline for POSIX-style compliance.Many diff tools and some CI linters flag files that don’t end with
\n.
Adding one keeps the repo consistent and prevents noisy diffs.-RED_TRIANGLE 🔺 X ❌ WARNING ⚠️ EXCLAMATION ❗ CHECK ✅ MAGNIFYING_GLASS 🔎 HAMMER_AND_WRENCH 🛠️ POLICE_LIGHT 🚨 INFO ℹ️ EYE 👁️ GEAR ⚙️ BELL 🔔 GEM 💎 SPARKLES ✨ +RED_TRIANGLE 🔺 X ❌ WARNING ⚠️ EXCLAMATION ❗ CHECK ✅ MAGNIFYING_GLASS 🔎 HAMMER_AND_WRENCH 🛠️ POLICE_LIGHT 🚨 INFO ℹ️ EYE 👁️ GEAR ⚙️ BELL 🔔 GEM 💎 SPARKLES ✨ +tests/unit/messages/formats/markdown/fixtures/table_block_30_5.md (2)
1-1: Specify a language on the opening fence for nicer GitHub rendering.Prefixing the back-ticks with
text(ormd) avoids misleading syntax-highlighting and keeps the table monospace in UIs that auto-detect languages.-``` +```text
9-9: Add missing newline at end of file.Same rationale as earlier: avoids EOF-newline warnings in tooling.
-``` +``` +tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md (1)
16-16: Terminate file with\nfor consistency.Minor, but keeps fixtures uniform and prevents lint noise.
-user1 `select 1` +user1 `select 1` +tests/unit/messages/formats/markdown/fixtures/nested_expandable.md (1)
6-6: Append trailing newline.Aligns with project style guidelines applied to other fixture files.
-Inner content +Inner content +tests/unit/messages/formats/text/fixtures/all_blocks_yellow.txt (1)
10-10: Insert final newline.Prevents “No newline at end of file” lint messages.
-user1 select 1 +user1 select 1 +tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md (2)
8-8: Prefer GitHub-style task-list syntax over a standalone emojiUsing the check-mark emoji alone renders fine, but you lose the semantic advantages of Markdown task lists (e.g., automatic check boxes in GitHub/GitLab UIs).
-✅ Check item +- [x] Check item
12-14: Rely on double-space line breaks instead of backslash escapesThe backslash continuation works only in CommonMark; many renderers ignore it.
A more interoperable approach is the standard two-space line break.-**Show Details**\ -🔎 **Details Section**\ +**Show Details**␠␠ +🔎 **Details Section**␠␠(␠ represents a space.)
tests/unit/messages/formats/markdown/fixtures/table_block_200_2.md (1)
1-1: Add an explicit info-string to the fenced blockSpecifying the language (
textworks well for ASCII tables) improves
syntax highlighting and avoids accidental interpretation as code in some renderers.-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_200_4.md (1)
1-1: Consistent fenced-code language hintSame comment as in the 2-column variant—add an info-string for better rendering.
-``` +```texttests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md (2)
8-8: Unify checklist notation with other fixturesKeep the red/yellow fixtures identical except for the color cue to avoid
non-color related diffs in snapshot tests.-✅ Check item +- [x] Check item
12-14: Backslash line breaks — same portability remark appliesSee the comment on the red variant; recommend double-space breaks.
-**Show Details**\ -🔎 **Details Section**\ +**Show Details**␠␠ +🔎 **Details Section**␠␠tests/unit/messages/formats/markdown/fixtures/table_block_30_3.md (1)
1-1: Annotate fenced block with languageAlign with other table fixtures for consistency.
-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_200_3.md (1)
2-8: Extremely long lines may hamper diff readabilityThe single-line cells (~1 k chars) make diffs unwieldy and hard to review. Consider inserting manual line breaks or splitting the lorem-ipsum text so future diffs stay readable.
elementary/messages/formats/text.py (2)
95-98: Simplify dictionary comprehension.The comprehension can be simplified as suggested by pylint.
- dicts = [ - {header: cell for header, cell in zip(block.headers, row)} - for row in block.rows - ] + dicts = [dict(zip(block.headers, row)) for row in block.rows]
56-72: Consider refactoring elif chains for better maintainability.While the current implementation works correctly, the long elif chain could be refactored using a dispatch pattern for better maintainability.
+ def _get_inline_formatters(self): + return { + IconBlock: lambda block: self.format_icon(block.icon), + TextBlock: lambda block: block.text, + LinkBlock: lambda block: f"{block.text} ({block.url})", + InlineCodeBlock: lambda block: block.code, + MentionBlock: lambda block: block.user, + LineBlock: lambda block: self.format_line_block(block), + WhitespaceBlock: lambda block: " ", + } def format_inline_block(self, block: InlineBlock) -> str: + formatters = self._get_inline_formatters() + formatter = formatters.get(type(block)) + if formatter: + return formatter(block) + else: + raise ValueError(f"Unsupported inline block type: {type(block)}")elementary/messages/formats/markdown.py (3)
101-104: Simplify dictionary comprehension.Same simplification opportunity as in the text formatter.
- dicts = [ - {header: cell for header, cell in zip(block.headers, row)} - for row in block.rows - ] + dicts = [dict(zip(block.headers, row)) for row in block.rows]
51-67: Consider refactoring elif chains for consistency.Similar to the text formatter, this elif chain could benefit from a dispatch pattern for better maintainability and consistency across formatters.
The same dispatch pattern approach suggested for the text formatter could be applied here for consistency.
133-133: Update type annotation for consistency.The type annotation uses lowercase
listwhich is modern Python style, but ensure this is consistent with the rest of the codebase.Check if the codebase uses
Listfrom typing or lowercaselistconsistently and update accordingly.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (80)
elementary/messages/formats/markdown.py(1 hunks)elementary/messages/formats/text.py(1 hunks)tests/unit/alerts/alert_messages/test_alert_utils.py(3 hunks)tests/unit/messages/formats/adaptive_cards/test_adaptive_cards.py(2 hunks)tests/unit/messages/formats/block_kit/test_block_kit.py(2 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_icons.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/bullet_list.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_200.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_50.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_500.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/colored_header.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/divider_blocks.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/expandable_block.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/fact_list.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/nested_expandable.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/simple_header.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_1000.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_200.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_50.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_500.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_styles.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/whitespace_block.md(1 hunks)tests/unit/messages/formats/markdown/test_markdown.py(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_green.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_no_color.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_red.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_yellow.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_icons.txt(1 hunks)tests/unit/messages/formats/text/fixtures/bullet_list.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_200.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_50.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_500.txt(1 hunks)tests/unit/messages/formats/text/fixtures/colored_header.txt(1 hunks)tests/unit/messages/formats/text/fixtures/divider_blocks.txt(1 hunks)tests/unit/messages/formats/text/fixtures/expandable_block.txt(1 hunks)tests/unit/messages/formats/text/fixtures/fact_list.txt(1 hunks)tests/unit/messages/formats/text/fixtures/nested_expandable.txt(1 hunks)tests/unit/messages/formats/text/fixtures/simple_header.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_1000.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_200.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_50.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_500.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_styles.txt(1 hunks)tests/unit/messages/formats/text/fixtures/whitespace_block.txt(1 hunks)tests/unit/messages/formats/text/test_text.py(1 hunks)tests/unit/messages/utils.py(2 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (6)
tests/unit/messages/formats/block_kit/test_block_kit.py (2)
tests/unit/messages/utils.py (2)
assert_expected_json(25-40)get_expected_file_path(17-22)tests/unit/messages/formats/base_test_format.py (1)
get_expected_file_path(38-39)
tests/unit/alerts/alert_messages/test_alert_utils.py (1)
tests/unit/messages/utils.py (2)
assert_expected_json(25-40)get_expected_file_path(17-22)
tests/unit/messages/formats/adaptive_cards/test_adaptive_cards.py (2)
tests/unit/messages/utils.py (2)
assert_expected_json(25-40)get_expected_file_path(17-22)tests/unit/messages/formats/base_test_format.py (1)
get_expected_file_path(38-39)
tests/unit/messages/utils.py (4)
tests/unit/messages/formats/adaptive_cards/test_adaptive_cards.py (1)
get_expected_file_path(46-47)tests/unit/messages/formats/text/test_text.py (1)
get_expected_file_path(15-16)tests/unit/messages/formats/block_kit/test_block_kit.py (1)
get_expected_file_path(22-23)tests/unit/messages/formats/markdown/test_markdown.py (1)
get_expected_file_path(15-16)
elementary/messages/formats/markdown.py (3)
elementary/messages/blocks.py (17)
ActionsBlock(101-103)CodeBlock(124-126)DividerBlock(129-130)ExpandableBlock(168-172)FactListBlock(148-150)HeaderBlock(119-121)Icon(8-22)IconBlock(51-53)InlineCodeBlock(56-58)LineBlock(66-69)LinesBlock(137-138)LinkBlock(45-48)MentionBlock(61-63)TableBlock(153-165)TextBlock(39-42)TextStyle(25-27)WhitespaceBlock(72-73)elementary/messages/message_body.py (1)
MessageBody(36-39)elementary/messages/formats/text.py (11)
TableStyle(36-38)format_icon(46-54)format_inline_block(56-72)format_line_block(74-77)format_lines_block(79-82)format_fact_list_block(84-89)format_table_block(91-101)format_expandable_block(103-104)format_message_blocks(125-128)format_message_block(106-123)format(130-131)
elementary/messages/formats/text.py (4)
elementary/clients/slack/slack_message_builder.py (1)
blocks(33-34)elementary/messages/blocks.py (14)
CodeBlock(124-126)DividerBlock(129-130)ExpandableBlock(168-172)FactListBlock(148-150)HeaderBlock(119-121)Icon(8-22)IconBlock(51-53)InlineCodeBlock(56-58)LineBlock(66-69)LinkBlock(45-48)MentionBlock(61-63)TableBlock(153-165)TextBlock(39-42)WhitespaceBlock(72-73)elementary/messages/message_body.py (1)
MessageBody(36-39)elementary/messages/formats/markdown.py (11)
TableStyle(31-33)format_icon(40-41)format_inline_block(51-67)format_line_block(69-72)format_lines_block(74-87)format_fact_list_block(89-94)format_table_block(96-107)format_expandable_block(109-110)format_message_blocks(133-136)format_message_block(112-131)format(138-139)
🪛 LanguageTool
tests/unit/messages/formats/text/fixtures/code_block_200.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_200.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/code_block_500.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_500.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/markdown/fixtures/text_length_500.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_1000.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/markdown/fixtures/text_length_1000.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_2.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_5.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_3.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/markdown/fixtures/text_length_200.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_1.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_4.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
🪛 markdownlint-cli2 (0.17.2)
tests/unit/messages/formats/markdown/fixtures/table_block_30_1.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
🪛 Pylint (3.3.7)
elementary/messages/formats/markdown.py
[refactor] 44-49: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 52-67: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 51-51: Too many return statements (7/6)
(R0911)
[refactor] 97-107: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 102-102: Unnecessary use of a comprehension, use dict(zip(block.headers, row)) instead.
(R1721)
[refactor] 113-131: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 112-112: Too many return statements (8/6)
(R0911)
elementary/messages/formats/text.py
[refactor] 47-54: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 57-72: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 56-56: Too many return statements (7/6)
(R0911)
[refactor] 92-101: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 96-96: Unnecessary use of a comprehension, use dict(zip(block.headers, row)) instead.
(R1721)
[refactor] 107-123: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 106-106: Too many return statements (7/6)
(R0911)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: code-quality
🔇 Additional comments (21)
tests/unit/messages/formats/text/fixtures/fact_list.txt (1)
1-1: Fixture looks correct – no issues found
Single-line content is appropriate for the test; nothing else to flag.tests/unit/messages/formats/text/fixtures/simple_header.txt (1)
1-1: Fixture looks correct – no issues found
Content is clear and consistent with naming; good to go.tests/unit/messages/formats/text/fixtures/colored_header.txt (1)
1-1: Fixture looks correct – no issues found
Matches the expected header sample for text formatting tests.tests/unit/messages/formats/text/fixtures/expandable_block.txt (1)
1-2: Fixture looks correct – no issues found
Two-line structure reflects “expandable” semantics accurately.tests/unit/messages/formats/text/fixtures/code_block_50.txt (1)
1-1: Fixture looks correct – no issues found
Placeholder text is fine for code-block length boundary testing.tests/unit/messages/formats/text/fixtures/table_block_200_5.txt (1)
7-7: Add terminating newline for POSIX-friendly toolingSeveral code-viewers and CLI tools expect a trailing
\nto distinguish the last line; omitting it can lead to noisy diffs.
[ suggest_nitpick ]@@ -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c +tests/unit/messages/formats/markdown/fixtures/text_length_50.md (1)
1-1: LGTM – content length matches fixture intentString length is exactly 50 characters (no newline), matching the fixture’s purpose.
No further action required.tests/unit/messages/formats/markdown/fixtures/table_block_8_1.md (1)
1-9: Verify fenced-code wrapping is intentionalThe table is wrapped in a triple-back-tick block, which causes Markdown renderers to display it as plain text rather than an actual table.
If the goal is to render a monospace code snippet – great.
If you expect a real Markdown table, drop the fence and use the pipe (|) syntax instead.No change requested if the current behaviour is deliberate.
tests/unit/messages/formats/markdown/fixtures/table_block_30_2.md (1)
1-9: Inconsistent fencing – opening & closing ``` should not be part of rendered tableThe back-tick fences (
```) are present inside the fixture body.
If the formatter is supposed to emit a fenced code block, include the language hint (e.g., ```text) for clarity; if not, remove the fences to avoid double-fencing when embedding this table elsewhere.tests/unit/messages/formats/markdown/fixtures/whitespace_block.md (1)
1-2: Fixture looks goodBack-slash continuation and
usage match the expected Markdown behaviour for the whitespace test case. No issues spotted.tests/unit/messages/formats/markdown/fixtures/text_length_1000.md (1)
1-1: Verify that the fixture is not accidentally truncatedThe file ends mid-word (“con”). If the intent was exactly 1000 characters, double-check that the generator didn’t cut the text earlier than planned, otherwise tests comparing full-length output may give false positives/negatives.
tests/unit/messages/formats/text/fixtures/table_block_8_3.txt (1)
1-7: All good – concise table layoutThe fixed-width columns accurately reflect the 8×3 table test case.
No concerns.tests/unit/messages/formats/text/fixtures/all_blocks_green.txt (1)
1-10: Fixture looks good – no issues foundThe content covers the various text-formatter features well and should serve the tests nicely.
tests/unit/messages/formats/markdown/fixtures/table_block_8_3.md (1)
1-9: No actionable feedbackNothing stands out – the fixture is concise and purposeful.
tests/unit/messages/formats/text/fixtures/table_block_200_4.txt (1)
1-7: No actionable feedbackThe long-column table is expected for width-stress tests; no issues spotted.
tests/unit/messages/formats/text/test_text.py (1)
1-20: LGTM! Clean test implementation following established patterns.The test class correctly inherits from
BaseTestFormat[str]and implements all required methods consistently with other format test modules. The fixture directory setup and file path handling are appropriate for text format testing.tests/unit/messages/utils.py (1)
43-49: LGTM! Well-implemented text assertion utility.The
assert_expected_textfunction follows the same pattern asassert_expected_jsonwith proper override support, maintaining consistency across the testing utilities.tests/unit/messages/formats/markdown/test_markdown.py (1)
1-20: LGTM! Consistent test implementation for markdown formatting.The test class follows the same established pattern as other format test modules, with appropriate fixture handling for markdown files (
.mdextension).elementary/messages/formats/text.py (1)
134-141: LGTM! Clean and well-structured entry point function.The
format_textfunction provides a clean interface with sensible defaults for icon and table styles. The parameter design allows for flexibility while maintaining ease of use.elementary/messages/formats/markdown.py (2)
74-87: LGTM! Sophisticated handling of markdown line break requirements.The logic correctly handles the nuance that markdown requires explicit line breaks (
\) for non-bullet list items while bullet lists naturally create new lines. This is a thoughtful implementation of markdown formatting requirements.
96-107: LGTM! Proper markdown table formatting with code blocks.The implementation correctly wraps both tabulated and JSON table output in markdown code blocks, ensuring proper rendering in markdown viewers.
| ReportLinkData as ReportLink, | ||
| ) | ||
| from tests.unit.messages.utils import assert_expected_json, get_expected_json_path | ||
| from tests.unit.messages.utils import assert_expected_json, get_expected_file_path |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Silent creation of empty JSON fixtures can hide real mismatches
get_expected_file_path will happily create the file and pre-populate it with {} when the fixture is missing.
This causes two problems:
- A missing / miss-typed fixture passes CI once
OVERRIDE=true, and - The first local run overwrites the file with
{}, making the diff in the subsequent assertion noisy and confusing.
Fail fast instead:
-from tests.unit.messages.utils import assert_expected_json, get_expected_file_path
+from tests.unit.messages.utils import assert_expected_json
+
+def _must_exist(path: Path) -> Path:
+ if not path.exists():
+ raise FileNotFoundError(f"Expected fixture is missing: {path}")
+ return pathand use _must_exist where you currently call get_expected_file_path.
This keeps the convenience helper for writers, while tests remain strict.
Committable suggestion skipped: line range outside the PR's diff.
🤖 Prompt for AI Agents
In tests/unit/alerts/alert_messages/test_alert_utils.py at line 26, replace
calls to get_expected_file_path with its _must_exist variant to prevent silent
creation of empty JSON fixture files. This change ensures that missing or
mistyped fixture files cause immediate test failures instead of creating empty
files, improving test strictness and avoiding confusing diffs. Update all
relevant test code to use _must_exist to enforce this fail-fast behavior while
retaining helper convenience.
| from tests.unit.messages.utils import assert_expected_json, get_expected_file_path | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Same hidden-fixture pitfall as above
get_expected_file_path silently fabricates empty JSON files. Consider re-using the _must_exist helper (see previous comment) or switching to a stricter helper for tests.
🤖 Prompt for AI Agents
In tests/unit/messages/formats/block_kit/test_block_kit.py around lines 13 to
14, the use of get_expected_file_path can lead to silent creation of empty JSON
files, which is problematic. Replace get_expected_file_path with the _must_exist
helper or another stricter helper function that ensures the expected JSON files
actually exist, preventing silent fabrication and improving test reliability.
tests/unit/messages/formats/adaptive_cards/test_adaptive_cards.py
Outdated
Show resolved
Hide resolved
| from elementary.messages.message_body import MessageBody | ||
| from tests.unit.messages.formats.base_test_format import BaseTestFormat | ||
| from tests.unit.messages.utils import assert_expected_json, get_expected_json_path | ||
| from tests.unit.messages.utils import assert_expected_json, get_expected_file_path |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Avoid shadowing by aliasing the imported helper
Importing get_expected_file_path and then defining a method with the same name may confuse readers and static-analysis tools. Alias the helper on import to keep the two clearly distinct.
-from tests.unit.messages.utils import assert_expected_json, get_expected_file_path
+from tests.unit.messages.utils import (
+ assert_expected_json,
+ get_expected_file_path as _get_expected_file_path,
+)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| from tests.unit.messages.utils import assert_expected_json, get_expected_file_path | |
| from tests.unit.messages.utils import ( | |
| assert_expected_json, | |
| get_expected_file_path as _get_expected_file_path, | |
| ) |
🤖 Prompt for AI Agents
In tests/unit/messages/formats/adaptive_cards/test_adaptive_cards.py at line 20,
the imported helper function get_expected_file_path is shadowed by a local
method with the same name. To fix this, alias the imported
get_expected_file_path during import to a different name, such as
get_expected_file_path_helper, to clearly distinguish it from the local method
and avoid confusion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (19)
tests/unit/messages/formats/text/fixtures/text_length_500.txt (1)
1-2: Add trailing newline for POSIX-friendly text filesMost linters and editors expect text files (even fixtures) to end with a single newline character (
\n). Adding it avoids spurious diffs and warnings in future PRs.Lorem ipsum dolor sit amet, consectetur adip +tests/unit/messages/formats/markdown/fixtures/text_length_1000.md (1)
1-2: Add a trailing newline for POSIX-style file hygieneFixtures are still source-controlled text files, so keeping the conventional trailing newline avoids noisy diffs when editors auto-append it.
Lorem ipsum dolor sit amet, con +tests/unit/messages/formats/text/fixtures/code_block_500.txt (1)
1-2: Add trailing newline for POSIX-compliant text files
Many tools (git, diff, some editors) expect a\nat EOF; its absence can cause needless “no-newline-at-end-of-file” markers and off-by-one issues in line-based tooling.Lorem ipsum dolor sit amet, consectetur adip +tests/unit/messages/formats/markdown/fixtures/code_block_50.md (1)
1-3: Specify a language identifier on the fenced code block (MD040)
markdownlint flags fenced blocks with no language. If the fixture isn’t specifically testing “no-language” behaviour, add a generic identifier (e.g.,text) for consistency with the rest of the fixtures.-``` +```text Lorem ipsum dolor sit amet, consectetur adipiscing -``` +```tests/unit/messages/formats/markdown/fixtures/code_block_500.md (1)
1-3: Add language identifier to fenced code block to satisfy MD040Markdown-lint flags this fixture because the opening fence lacks a language (
```text,```bash, etc.).
Even though the fixture is consumed programmatically and highlighting is not required, adding an identifier (e.g.text) silences the linter without affecting the tests and improves readability when browsing the file.-``` +```texttests/unit/messages/formats/text/fixtures/table_block_200_4.txt (1)
1-8: Consider generating this wide-table fixture programmatically in the test instead of checking in a 200-column text fileKeeping very large static fixtures in the repository increases repo size and makes diffs noisy while providing limited benefit—the content is synthetic “Lorem ipsum” that can be produced on-the-fly.
A simple helper that renders the table at test time (and asserts against a hard-coded hash or golden string held in code) would keep the repo lean and avoid merge conflicts when spacing changes.tests/unit/messages/formats/markdown/fixtures/table_block_8_3.md (1)
1-9: Specify a language identifier for the fenced code block
markdownlint(MD040) flags the fence because no language is provided.
Even though this is just a test fixture, adding a language (e.g.,textormarkdown) keeps the fixture lint-clean and clarifies intent for future readers/editors.-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_200_2.md (1)
1-9: Specify language identifier for fenced code block (MD040)markdownlint flags the opening ``` fence because no language is declared.
Adding a generic identifier such astext(or `md` if you want syntax-highlighted pipes) silences the linter without affecting fixture fidelity.-``` +```textOptional: add a trailing newline after the closing fence to keep POSIX editors happy.
tests/unit/messages/formats/markdown/fixtures/table_block_8_1.md (1)
1-1: Specify a language for the fenced code block to silence MD040
markdownlintflags the opening back-ticks because no language is provided.
Addingtextkeeps the current rendering while satisfying the linter.-``` +```texttests/unit/messages/formats/markdown/fixtures/table_block_8_4.md (1)
1-9: Consider adding a language identifier to the fenced code blockmarkdownlint (MD040) flags this fixture because the opening back-ticks do not specify a language.
If you don’t care about syntax highlighting you can usetext, which keeps the rendering identical while silencing the linter:-``` +```text … -``` +```Alternatively, disable MD040 for this file if retaining a “bare” fence is required for test fidelity.
tests/unit/messages/formats/text/fixtures/text_length_1000.txt (1)
1-2: Ensure POSIX-style trailing newline for cross-tool consistencySome editors and *nix tooling expect every text file to end with a single
\n.
Please verify the fixture actually ends with one final newline (the blank line in the diff may be just the Git viewer). If it is missing, append it so linters and future diffs do not complain.tests/unit/messages/formats/markdown/fixtures/table_block_200_4.md (1)
1-1: Add a language identifier to the fenced code block
markdownlintis flagging MD040 because the opening fence lacks a language.
Adding a generic identifier such astext(ormd) keeps the fixture rendering unchanged while satisfying the linter.-``` +```texttests/unit/messages/formats/markdown/fixtures/text_length_500.md (1)
1-2: Store long placeholder text programmatically instead of as a committed fixtureThe 500-char Lorem ipsum blob lives here solely to satisfy a length requirement. Committing large single-line lorem-ipsum files clutters diffs and inflates repository size. Prefer generating the text on-the-fly inside the test (e.g.,
text = "Lorem ipsum " * 40and truncate to 500 chars) or keep it in a compact fixture (multi-line, readable).tests/unit/messages/formats/markdown/fixtures/table_block_200_3.md (2)
1-3: Specify a language for the fenced code block to satisfymarkdownlint(MD040)
markdownlintflags anonymous fenced code blocks.
Adding an explicit language (e.g.,text) keeps the linter quiet and documents intent.-``` +```text
9-9: Add a terminal newline for POSIX friendliness (optional)Many editors/lint tools warn when the last line is not newline-terminated.
Not critical for tests, but easy to fix.tests/unit/messages/formats/text/fixtures/table_block_200_1.txt (1)
1-8: Nit: add a trailing newline to avoid diff-only churnThe fixture ends without a terminating newline. Git diff tools and some editors highlight this as a warning and future edits often add it unintentionally, creating noisy diffs.
Consider appending a single\nat EOF.tests/unit/messages/formats/markdown/fixtures/table_block_200_1.md (1)
1-9: Optional: specify a fenced-code language to silence MD040
markdownlintflags the opening ``` block because no language identifier is provided.
If the formatter’s output is unconcerned with syntax highlighting, you can safely ignore; otherwise, addingtext(or another appropriate token) will suppress the linter without altering rendered appearance:-``` +```textEnsure this change stays consistent with the formatter’s expected output before updating the fixture.
tests/unit/messages/formats/text/fixtures/table_block_200_2.txt (1)
1-8: Consider generating the wide-table fixture on the fly instead of committing a 4-KB plaintext snapshotStoring wide, space-padded fixtures bloats the repo history and makes diffs noisy for what is essentially deterministic data.
A lightweight alternative:
- Keep a short seed file (e.g. JSON rows/columns).
- In the test, generate the padded table at runtime using the new
TextFormatterand compare against the regenerated value.This keeps fixtures readable and avoids future churn if the padding algorithm changes.
If keeping the file is required for performance or reproducibility, add a comment header (# AUTO-GENERATED – do not edit) so future contributors know not to hand-edit it.tests/unit/messages/formats/text/fixtures/table_block_200_5.txt (1)
3-7: Fixture size & maintainabilityThe test fixture is ~1 KB of repeated “Lorem ipsum …” filler.
While correct functionally, such long placeholder text inflates the repository and makes reviewing diffs noisy. Consider:-# five full rows of 200-char lorem ipsum +# generate rows dynamically inside the test or +# use a shorter deterministic string per column (e.g., "r0c0", "r0c1", …)This keeps the snapshot intent while trimming file weight and easing future maintenance.
No action required if the team prefers explicit golden-files, but worth weighing the trade-off.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (75)
elementary/messages/blocks.py(2 hunks)elementary/messages/message_body.py(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_icons.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/bullet_list.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_200.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_50.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/code_block_500.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/colored_header.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/divider_blocks.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/expandable_block.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/fact_list.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/nested_expandable.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/simple_header.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_30_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_1.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_2.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_3.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_4.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/table_block_8_5.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_1000.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_200.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_50.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_length_500.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/text_styles.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/whitespace_block.md(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_green.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_no_color.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_red.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_blocks_yellow.txt(1 hunks)tests/unit/messages/formats/text/fixtures/all_icons.txt(1 hunks)tests/unit/messages/formats/text/fixtures/bullet_list.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_200.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_50.txt(1 hunks)tests/unit/messages/formats/text/fixtures/code_block_500.txt(1 hunks)tests/unit/messages/formats/text/fixtures/colored_header.txt(1 hunks)tests/unit/messages/formats/text/fixtures/divider_blocks.txt(1 hunks)tests/unit/messages/formats/text/fixtures/expandable_block.txt(1 hunks)tests/unit/messages/formats/text/fixtures/fact_list.txt(1 hunks)tests/unit/messages/formats/text/fixtures/nested_expandable.txt(1 hunks)tests/unit/messages/formats/text/fixtures/simple_header.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_200_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_30_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_1.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_2.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_3.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_4.txt(1 hunks)tests/unit/messages/formats/text/fixtures/table_block_8_5.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_1000.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_200.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_50.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_length_500.txt(1 hunks)tests/unit/messages/formats/text/fixtures/text_styles.txt(1 hunks)tests/unit/messages/formats/text/fixtures/whitespace_block.txt(1 hunks)tests/unit/messages/utils.py(2 hunks)
✅ Files skipped from review due to trivial changes (4)
- elementary/messages/message_body.py
- elementary/messages/blocks.py
- tests/unit/messages/formats/markdown/fixtures/table_block_30_3.md
- tests/unit/messages/formats/text/fixtures/all_icons.txt
🚧 Files skipped from review as they are similar to previous changes (47)
- tests/unit/messages/formats/markdown/fixtures/colored_header.md
- tests/unit/messages/formats/markdown/fixtures/code_block_200.md
- tests/unit/messages/formats/markdown/fixtures/text_length_50.md
- tests/unit/messages/formats/text/fixtures/fact_list.txt
- tests/unit/messages/formats/text/fixtures/text_length_50.txt
- tests/unit/messages/formats/markdown/fixtures/table_block_8_5.md
- tests/unit/messages/formats/markdown/fixtures/bullet_list.md
- tests/unit/messages/formats/text/fixtures/simple_header.txt
- tests/unit/messages/formats/text/fixtures/expandable_block.txt
- tests/unit/messages/formats/text/fixtures/code_block_50.txt
- tests/unit/messages/formats/markdown/fixtures/fact_list.md
- tests/unit/messages/formats/markdown/fixtures/expandable_block.md
- tests/unit/messages/formats/text/fixtures/text_styles.txt
- tests/unit/messages/formats/text/fixtures/nested_expandable.txt
- tests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md
- tests/unit/messages/formats/text/fixtures/table_block_8_1.txt
- tests/unit/messages/formats/text/fixtures/colored_header.txt
- tests/unit/messages/formats/markdown/fixtures/table_block_30_2.md
- tests/unit/messages/formats/text/fixtures/divider_blocks.txt
- tests/unit/messages/formats/text/fixtures/table_block_8_4.txt
- tests/unit/messages/formats/text/fixtures/table_block_30_1.txt
- tests/unit/messages/formats/markdown/fixtures/table_block_8_2.md
- tests/unit/messages/formats/markdown/fixtures/simple_header.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md
- tests/unit/messages/formats/markdown/fixtures/text_styles.md
- tests/unit/messages/formats/text/fixtures/all_blocks_yellow.txt
- tests/unit/messages/formats/text/fixtures/table_block_30_4.txt
- tests/unit/messages/formats/markdown/fixtures/divider_blocks.md
- tests/unit/messages/formats/markdown/fixtures/nested_expandable.md
- tests/unit/messages/formats/text/fixtures/table_block_30_3.txt
- tests/unit/messages/formats/text/fixtures/whitespace_block.txt
- tests/unit/messages/formats/text/fixtures/table_block_8_5.txt
- tests/unit/messages/formats/text/fixtures/bullet_list.txt
- tests/unit/messages/formats/markdown/fixtures/all_icons.md
- tests/unit/messages/formats/markdown/fixtures/table_block_30_4.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md
- tests/unit/messages/formats/markdown/fixtures/whitespace_block.md
- tests/unit/messages/formats/text/fixtures/all_blocks_no_color.txt
- tests/unit/messages/formats/text/fixtures/table_block_8_2.txt
- tests/unit/messages/formats/text/fixtures/all_blocks_green.txt
- tests/unit/messages/formats/text/fixtures/table_block_30_5.txt
- tests/unit/messages/formats/markdown/fixtures/table_block_30_5.md
- tests/unit/messages/formats/text/fixtures/all_blocks_red.txt
- tests/unit/messages/formats/text/fixtures/table_block_8_3.txt
- tests/unit/messages/formats/text/fixtures/table_block_30_2.txt
- tests/unit/messages/utils.py
🧰 Additional context used
🪛 markdownlint-cli2 (0.17.2)
tests/unit/messages/formats/markdown/fixtures/code_block_50.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/code_block_500.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_1.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_2.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_3.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_4.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_30_1.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_8_1.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_8_3.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
tests/unit/messages/formats/markdown/fixtures/table_block_8_4.md
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
🪛 LanguageTool
tests/unit/messages/formats/markdown/fixtures/text_length_1000.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/markdown/fixtures/text_length_200.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/markdown/fixtures/text_length_500.md
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip ...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/code_block_200.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/code_block_500.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip ...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_1.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_2.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_3.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_4.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/table_block_200_5.txt
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~3-~3: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~4-~4: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~5-~5: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~6-~6: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum dol...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c Lorem ipsum do...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~7-~7: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_1000.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, con
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_200.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, c
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
tests/unit/messages/formats/text/fixtures/text_length_500.txt
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adipi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~1-~1: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... sit amet, consectetur adipiscing elit. Lorem ipsum dolor sit amet, consectetur adip ...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: code-quality
🔇 Additional comments (4)
tests/unit/messages/formats/text/fixtures/code_block_200.txt (1)
1-2: Fixture looks good as-isThe placeholder content and length are appropriate for exercising the formatter’s code-block handling. No action needed.
tests/unit/messages/formats/text/fixtures/text_length_200.txt (1)
1-1: Fixture looks good.The placeholder text fulfils its purpose for length-based assertions. No issues spotted.
tests/unit/messages/formats/markdown/fixtures/text_length_200.md (1)
1-1: Confirm the fixture’s exact-length requirementThe line ends with a solitary “c”, suggesting the sentence was cut mid-word to hit an exact 200-character target. If downstream assertions rely on precisely 200 characters (no trailing newline), any inadvertent edit—including adding a newline, trimming whitespace, or re-wrapping the text—will break the test. Please double-check that:
- The file length is indeed 200 bytes/characters (excluding a final newline if the test expects none).
- Tests explicitly verify the length rather than the textual content, so future refactors don’t accidentally fail due to harmless wording changes.
If length is not critical, consider finishing the word to improve readability of the fixture.
tests/unit/messages/formats/text/fixtures/table_block_200_3.txt (1)
1-7: Fixture looks goodNo functional or formatting issues spotted; content aligns with the Markdown counterpart.
| @@ -0,0 +1,9 @@ | |||
| ``` | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add language identifier to the fenced code block (MD040)
markdownlint fails on anonymous code fences.
Using a neutral identifier such as text satisfies the rule and leaves rendering unchanged.
-```
+```text🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
In tests/unit/messages/formats/markdown/fixtures/table_block_30_1.md at line 1,
the fenced code block is missing a language identifier, causing markdownlint
rule MD040 to fail. Add a neutral language identifier like `text` immediately
after the opening triple backticks to fix the linting error without affecting
rendering.
| @@ -0,0 +1,9 @@ | |||
| ``` | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Add language tag to fenced code block to satisfy markdownlint MD040
markdownlint flags the opening fence without a language.
Updating to text (or none) keeps the snapshot identical for renderers yet appeases the linter:
-```
+```textIf tests compare the fixture byte-for-byte, remember to update the expected string in assertions.
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
1-1: Fenced code blocks should have a language specified
null
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
In tests/unit/messages/formats/markdown/fixtures/table_block_200_5.md at line 1,
the fenced code block lacks a language tag, causing markdownlint MD040 warnings.
Add a language tag such as "text" immediately after the opening triple backticks
to satisfy the linter without changing the rendered output. If the tests compare
the fixture content exactly, update the expected strings in the test assertions
accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
elementary/messages/formats/text.py (1)
46-54: Previous icon rendering issue has been resolved.The function now correctly uses
ICON_TO_UNICODE[icon]for the Unicode style, which properly renders Unicode characters for plain text output. This addresses the previous review concern about using HTML entities.
🧹 Nitpick comments (1)
elementary/messages/formats/text.py (1)
91-101: Consider minor optimization for dictionary construction.The table formatting logic is correct and handles both tabulate and JSON styles appropriately. Static analysis suggests using
dict(zip(block.headers, row))instead of the dict comprehension on line 96 for slightly better performance.- dicts = [ - {header: cell for header, cell in zip(block.headers, row)} - for row in block.rows - ] + dicts = [dict(zip(block.headers, row)) for row in block.rows]
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (5)
elementary/messages/formats/adaptive_cards.py(2 hunks)elementary/messages/formats/block_kit.py(2 hunks)elementary/messages/formats/markdown.py(1 hunks)elementary/messages/formats/text.py(1 hunks)elementary/messages/formats/unicode.py(2 hunks)
✅ Files skipped from review due to trivial changes (3)
- elementary/messages/formats/adaptive_cards.py
- elementary/messages/formats/unicode.py
- elementary/messages/formats/block_kit.py
🧰 Additional context used
🧬 Code Graph Analysis (1)
elementary/messages/formats/text.py (3)
elementary/messages/blocks.py (15)
ActionsBlock(101-103)CodeBlock(124-126)DividerBlock(129-130)ExpandableBlock(168-172)FactListBlock(148-150)HeaderBlock(119-121)Icon(8-22)IconBlock(51-53)InlineCodeBlock(56-58)LineBlock(66-69)LinkBlock(45-48)MentionBlock(61-63)TableBlock(153-165)TextBlock(39-42)WhitespaceBlock(72-73)elementary/messages/message_body.py (1)
MessageBody(36-39)elementary/messages/formats/markdown.py (11)
TableStyle(31-33)format_icon(40-41)format_inline_block(51-67)format_line_block(69-72)format_lines_block(74-87)format_fact_list_block(89-94)format_table_block(96-107)format_expandable_block(109-110)format_message_blocks(133-136)format_message_block(112-131)format(138-139)
🪛 Pylint (3.3.7)
elementary/messages/formats/markdown.py
[refactor] 44-49: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 52-67: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 51-51: Too many return statements (7/6)
(R0911)
[refactor] 97-107: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 102-102: Unnecessary use of a comprehension, use dict(zip(block.headers, row)) instead.
(R1721)
[refactor] 113-131: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 112-112: Too many return statements (8/6)
(R0911)
elementary/messages/formats/text.py
[refactor] 47-54: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 57-72: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 56-56: Too many return statements (7/6)
(R0911)
[refactor] 92-101: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 96-96: Unnecessary use of a comprehension, use dict(zip(block.headers, row)) instead.
(R1721)
[refactor] 107-123: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 106-106: Too many return statements (7/6)
(R0911)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: code-quality
🔇 Additional comments (3)
elementary/messages/formats/markdown.py (3)
74-87: Complex line formatting logic looks correct for Markdown.The implementation correctly handles Markdown's line break behavior by:
- Detecting bullet lists with regex pattern
^\s*[*-]- Adding backslash escapes for non-bullet lines to force line breaks
- Properly managing newlines between lines
The logic appropriately addresses Markdown's requirement that single line breaks don't render as new lines except in bullet lists.
96-107: Table formatting implementation is appropriate.Both table styles correctly wrap output in code blocks using triple backticks, which is the standard approach for preserving table formatting in Markdown. The JSON style provides a structured alternative when tabular formatting isn't suitable.
109-110: Hard line‐break behavior verifiedThe
\\\nin the f-string produces a single backslash at end-of-line followed by a newline, which is the CommonMark way to force a hard line break. The fixtures (e.g. expandable_block.md, nested_expandable.md) confirm this exact rendering. No changes required.
| def format_message_blocks(self, blocks: List[MessageBlock]) -> str: | ||
| if not blocks: | ||
| return "" | ||
| return "\n".join([self.format_message_block(block) for block in blocks]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Verify block separation behavior for text format.
The method joins message blocks with single newlines, which differs from the markdown formatter that uses double newlines (\n\n). Ensure this single newline separation provides adequate visual distinction between blocks in plain text output.
🏁 Script executed:
#!/bin/bash
# Check if there are any tests that verify the block separation behavior
ast-grep --pattern 'format_message_blocks($$$)' | head -10
rg -A 5 -B 5 'format_message_blocks.*join'Length of output: 325
Add unit tests to verify single-newline separation in TextFormatter
No existing tests cover format_message_blocks in elementary/messages/formats/text.py. To ensure that joining blocks with a single \n still gives adequate visual separation (vs. the Markdown formatter’s \n\n), please:
- Manually verify the plain-text output for a multi-block message.
- Add a unit test (e.g. under
tests/…) forTextFormatter.format_message_blocks, asserting:formatter = TextFormatter() blocks = [MessageBlock(text="A"), MessageBlock(text="B")] assert formatter.format_message_blocks(blocks) == "A\nB"
- Update or extend any existing tests for other formatters to include a similar case for plain text.
🤖 Prompt for AI Agents
In elementary/messages/formats/text.py around lines 125 to 128, the method
format_message_blocks lacks unit tests verifying that multiple message blocks
are joined with a single newline. Add a new unit test in the appropriate test
file under tests/ that creates a TextFormatter instance, formats a list of
MessageBlock objects with texts "A" and "B", and asserts the output equals
"A\nB". Also, review and extend existing formatter tests to include similar
cases ensuring consistent plain-text formatting.
| Some content with a [link](https://example.com) | ||
|
|
||
| **Inner Block**\ | ||
| Inner content |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Outer Block
🔎 Title with Icon
Some content with a link
Inner Block
Inner contentInner Block 2
Inner content
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Nitpick comments (1)
elementary/messages/formats/markdown.py (1)
31-33: Consider reusing the existing TableStyle enum.The
TableStyleenum is duplicated from the text formatter. Consider importing it from a shared location to maintain consistency and avoid duplication.-class TableStyle(Enum): - TABULATE = "tabulate" - JSON = "json"Import from the text formatter or create a shared enums module:
+from elementary.messages.formats.text import TableStyle
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (7)
elementary/messages/formats/markdown.py(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/expandable_block.md(1 hunks)tests/unit/messages/formats/markdown/fixtures/nested_expandable.md(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (6)
- tests/unit/messages/formats/markdown/fixtures/expandable_block.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_yellow.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_red.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_no_color.md
- tests/unit/messages/formats/markdown/fixtures/all_blocks_green.md
- tests/unit/messages/formats/markdown/fixtures/nested_expandable.md
🧰 Additional context used
🧬 Code Graph Analysis (1)
elementary/messages/formats/markdown.py (4)
elementary/messages/blocks.py (17)
ActionsBlock(101-103)CodeBlock(124-126)DividerBlock(129-130)ExpandableBlock(168-172)FactListBlock(148-150)HeaderBlock(119-121)Icon(8-22)IconBlock(51-53)InlineCodeBlock(56-58)LineBlock(66-69)LinesBlock(137-138)LinkBlock(45-48)MentionBlock(61-63)TableBlock(153-165)TextBlock(39-42)TextStyle(25-27)WhitespaceBlock(72-73)elementary/messages/message_body.py (1)
MessageBody(36-39)elementary/messages/formats/text.py (11)
TableStyle(36-38)format_icon(46-54)format_inline_block(56-72)format_line_block(74-77)format_lines_block(79-82)format_fact_list_block(84-89)format_table_block(91-101)format_expandable_block(103-104)format_message_blocks(125-128)format_message_block(106-123)format(130-131)elementary/messages/formats/adaptive_cards.py (10)
format_icon(34-35)format_text_block(38-44)format_inline_block(47-63)format_line_block(70-77)format_lines_block(80-81)format_fact_list_block(121-131)format_table_block(134-156)format_expandable_block(211-231)format_message_blocks(234-245)format_message_block(159-179)
🪛 Pylint (3.3.7)
elementary/messages/formats/markdown.py
[refactor] 44-49: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 52-67: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 51-51: Too many return statements (7/6)
(R0911)
[refactor] 97-107: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 102-102: Unnecessary use of a comprehension, use dict(zip(block.headers, row)) instead.
(R1721)
[refactor] 115-133: Unnecessary "elif" after "return", remove the leading "el" from "elif"
(R1705)
[refactor] 114-114: Too many return statements (8/6)
(R0911)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: code-quality
🔇 Additional comments (4)
elementary/messages/formats/markdown.py (4)
43-49: Text block formatting looks correct.The implementation properly handles Markdown syntax for bold (
**text**) and italic (_text_) formatting.
99-99: Table formatting approach is appropriate.Wrapping both tabulated and JSON tables in code blocks (
```) is the correct approach for Markdown, ensuring proper rendering of formatted content.Also applies to: 105-105
109-112: Expandable block formatting implementation looks correct.The use of Markdown blockquote syntax (
>) with bold title formatting creates appropriate expandable-style content for Markdown output.
144-148: Convenience function implementation is clean.The
format_markdownfunction provides a good interface with sensible defaults for table styling.
| elif isinstance(block, LineBlock): | ||
| return self.format_line_block(block) | ||
| elif isinstance(block, WhitespaceBlock): | ||
| return " " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Replace HTML entity with Markdown-appropriate whitespace.
Using is HTML syntax, not standard Markdown. Consider using regular spaces or Markdown-specific non-breaking space alternatives.
- return " "
+ return " "For non-breaking space in Markdown, you could also use multiple spaces or consider if whitespace blocks need special handling at all.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| return " " | |
| return " " |
🤖 Prompt for AI Agents
In elementary/messages/formats/markdown.py at line 65, replace the HTML entity
" " with a Markdown-appropriate whitespace. Use regular spaces or multiple
spaces instead of the HTML non-breaking space, ensuring the output conforms to
Markdown syntax rather than HTML.
| def format_lines_block(self, block: LinesBlock) -> str: | ||
| formatted_parts = [] | ||
| for index, line_block in enumerate(block.lines): | ||
| formatted_line = self.format_line_block(line_block) | ||
| formatted_parts.append(formatted_line) | ||
| is_bullet = re.match(r"^\s*[*-]", formatted_line) | ||
| is_last = index == len(block.lines) - 1 | ||
| if not is_bullet and not is_last: | ||
| # in markdown, single line breaks are not rendered as new lines, except for bullet lists | ||
| # so we need to add a backslash to force a new line | ||
| formatted_parts.append("\\") | ||
| if not is_last: | ||
| formatted_parts.append("\n") | ||
| return "".join(formatted_parts) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Verify the line break handling logic.
The complex logic for handling line breaks and bullet lists appears correct for Markdown rendering, but this should be tested to ensure proper output formatting.
🏁 Script executed:
#!/bin/bash
# Description: Search for existing tests of the MarkdownFormatter to verify line break handling
# Look for markdown formatter tests
fd -t f -e py test | xargs rg -l "MarkdownFormatter|format_lines_block" -A 5 -B 5Length of output: 83
🏁 Script executed:
#!/bin/bash
# Search for the MarkdownFormatter class definition and usage across all Python files
rg -n "class .*MarkdownFormatter" -g "*.py" || echo "No class definition found"
rg -n "MarkdownFormatter" -g "*.py" || echo "No MarkdownFormatter references found"
rg -n "format_lines_block" -g "*.py" || echo "No format_lines_block references found"Length of output: 938
Add unit tests for MarkdownFormatter.format_lines_block
There are currently no tests covering elementary/messages/formats/markdown.py:74–87. We need to validate the backslash + newline logic for bullets vs. non-bullets to prevent regressions.
Please add tests that cover at least:
- A single non-bullet line (no trailing backslash or extra newline)
- Multiple consecutive non-bullet lines (each should end with
\\\nexcept the last) - Bullet lines (
*or-), ensuring they don’t get a backslash - Mixed blocks where bullets and non-bullets alternate
- Edge cases (empty lines, whitespace-only lines)
File to test:
- elementary/messages/formats/markdown.py, method
format_lines_block
🤖 Prompt for AI Agents
In elementary/messages/formats/markdown.py around lines 74 to 87, add unit tests
for the format_lines_block method to cover its behavior thoroughly. Create tests
for a single non-bullet line ensuring no trailing backslash or extra newline,
multiple consecutive non-bullet lines verifying each ends with a backslash and
newline except the last, bullet lines starting with * or - confirming they do
not get a backslash, mixed blocks alternating bullets and non-bullets to check
correct formatting, and edge cases including empty and whitespace-only lines.
These tests should validate the backslash plus newline logic to prevent
regressions.
| else: | ||
| raise ValueError(f"Unsupported message block type: {type(block)}") | ||
|
|
||
| def format_message_blocks(self, blocks: list[MessageBlock]) -> str: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Consider Python version compatibility for type annotations.
The list[MessageBlock] syntax requires Python 3.9+. Ensure this is consistent with the project's Python version requirements.
🏁 Script executed:
#!/bin/bash
# Description: Check Python version requirements and existing type annotation patterns
# Check for Python version requirements
fd -t f pyproject.toml setup.py setup.cfg requirements.txt | xargs cat 2>/dev/null | rg -i "python.*version|python_requires"
# Check existing type annotation patterns in the codebase
rg "List\[|list\[" --type py -A 1 -B 1 | head -20Length of output: 1950
🏁 Script executed:
#!/bin/bash
set -euxo pipefail
echo "Searching for project metadata files..."
# Find potential Python version specifiers
fd -HI pyproject.toml setup.py Pipfile | sed -e 's/^/FOUND: /'
# Display contents if found
for f in $(fd -HI pyproject.toml setup.py Pipfile); do
echo "=== $f ==="
head -n50 "$f"
done
echo
echo "Checking GitHub Actions for python-version..."
rg -n "python-version" -t yaml .github/workflows || echo "No python-version keys found in workflows"
echo
echo "Checking for Travis CI configuration..."
if [ -f .travis.yml ]; then
echo "=== .travis.yml ==="
head -n30 .travis.yml
else
echo "No .travis.yml"
fi
echo
echo "Checking for runtime.txt..."
if [ -f runtime.txt ]; then
echo "=== runtime.txt ==="
head -n10 runtime.txt
else
echo "No runtime.txt"
fi
echo
echo "Looking for Dockerfiles with Python base images..."
rg -n "FROM python" -t docker || echo "No Dockerfiles using Python base image"
echo
echo "Searching for Poetry configuration..."
rg -R "tool.poetry" -t toml || echo "No Poetry metadata found"Length of output: 324
Switch to typing.List for consistency and Python <3.9 compatibility
It looks like the rest of the codebase (and your tests) still use typing.List[...], whereas built-in generics (list[...]) only work on Python 3.9+. To avoid a breaking change and keep annotations uniform, update this signature to use List[MessageBlock].
• File elementary/messages/formats/markdown.py
– Add at top (if not already present):
python from typing import List
– Change
diff - def format_message_blocks(self, blocks: list[MessageBlock]) -> str: + def format_message_blocks(self, blocks: List[MessageBlock]) -> str:
🤖 Prompt for AI Agents
In elementary/messages/formats/markdown.py at line 135, the method signature
uses the built-in generic list[MessageBlock], which is incompatible with Python
versions earlier than 3.9 and inconsistent with the rest of the codebase. To fix
this, import List from typing at the top of the file if not already imported,
and change the method signature to use List[MessageBlock] instead of
list[MessageBlock].
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.pre-commit-config.yaml (1)
22-22: Regex works, but tighten & make cross-platform
^tests/unit/messages/formats/markdown/fixtures/will do the job on POSIX paths, yet it breaks on Windows where pre-commit feeds back-slash-separated paths (e.g.tests\unit\...).
A tiny tweak makes the rule OS-agnostic and slightly easier to extend:- exclude: \.html$|^docs/|^tests/unit/messages/formats/markdown/fixtures/ + exclude: \.html$|^(docs|tests[\\/]+unit[\\/]+messages[\\/]+formats[\\/]+markdown[\\/]+fixtures)/•
[…]matches both/and\.
• Grouping the two directory roots under one^(…)keeps the pattern short if more roots are added later.
Not critical, but saves surprises for Windows contributors.
null
Summary by CodeRabbit
New Features
Tests
Chores
Refactor