added test_block_formatter; restructured workflows; added workflow badges
This commit is contained in:
1 parent
0b6a1b5d7a
commit
043b1e918f
6 files changed
+79
-37
No files matched your search
@@ -1,37 +0,0 @@
|
|||||||
name: Python package
|
|
||||||
|
|
||||||
on: [push]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
stylecheck:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: Setup Python 3.12
|
|
||||||
uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: 3.12
|
|
||||||
- name: Install Dependencies
|
|
||||||
run: |
|
|
||||||
pip install ".[test]"
|
|
||||||
mypy html_to_django || true
|
|
||||||
mypy --install-types --non-interactive
|
|
||||||
- name: Stylecheck
|
|
||||||
run: |
|
|
||||||
mypy --strict html_to_django
|
|
||||||
pycodestyle --max-line-length 120 html_to_django
|
|
||||||
test:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
python-version: ["3.12"]
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
- name: Setup Python ${{ matrix.python-version }}
|
|
||||||
uses: actions/setup-python@v5
|
|
||||||
with:
|
|
||||||
python-version: ${{ matrix.python-version }}
|
|
||||||
- name: Install Dependencies
|
|
||||||
run: pip install ".[test]"
|
|
||||||
- name: Test on Python ${{ matrix.python-version }}
|
|
||||||
run: python -m unittest discover tests --verbose
|
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: Stylecheck
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- 'main'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- 'main'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
stylecheck:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Setup Python 3.12
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: 3.12
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: |
|
||||||
|
pip install ".[test]"
|
||||||
|
mypy html_to_django || true
|
||||||
|
mypy --install-types --non-interactive
|
||||||
|
- name: MyPy
|
||||||
|
run: mypy --strict html_to_django
|
||||||
|
- name: Pycodestyle
|
||||||
|
run: pycodestyle --max-line-length 120 html_to_django
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
name: Tests
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- 'main'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- 'main'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
unittest:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ["3.12"]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Setup Python ${{ matrix.python-version }}
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: pip install ".[test]"
|
||||||
|
- name: Test on Python ${{ matrix.python-version }}
|
||||||
|
run: python -m unittest discover tests --verbose
|
||||||
@@ -1,6 +1,9 @@
|
|||||||
HTML To Django
|
HTML To Django
|
||||||
===
|
===
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
Convert HTML files with special syntax to Django template files.
|
Convert HTML files with special syntax to Django template files.
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
|
|||||||
Whitespace-only changes.
@@ -0,0 +1,20 @@
|
|||||||
|
from unittest import TestCase
|
||||||
|
from bs4 import BeautifulSoup
|
||||||
|
from html_to_django.formatters import block_formatter
|
||||||
|
|
||||||
|
|
||||||
|
class BlockTests(TestCase):
|
||||||
|
def test_basic(self):
|
||||||
|
soup = BeautifulSoup('<div dj-block="content"></div>', "html.parser")
|
||||||
|
block_formatter.format(soup)
|
||||||
|
self.assertEqual("{% block content %}{% endblock %}", str(soup))
|
||||||
|
|
||||||
|
def test_with_content(self):
|
||||||
|
soup = BeautifulSoup('<div dj-block="content">Test</div>', "html.parser")
|
||||||
|
block_formatter.format(soup)
|
||||||
|
self.assertEqual("{% block content %}Test{% endblock %}", str(soup))
|
||||||
|
|
||||||
|
def test_with_block_inside(self):
|
||||||
|
soup = BeautifulSoup('<div dj-block="content"><div dj-block="inner">Test</div></div>', "html.parser")
|
||||||
|
block_formatter.format(soup)
|
||||||
|
self.assertEqual("{% block content %}{% block inner %}Test{% endblock %}{% endblock %}", str(soup))
|
||||||
Reference in new issue
Block a user