diff options
author | Alfredo Tupone <tupone@gentoo.org> | 2023-03-31 21:52:52 +0200 |
---|---|---|
committer | Alfredo Tupone <tupone@gentoo.org> | 2023-03-31 21:53:09 +0200 |
commit | 3d870225af3c41a7b5f45f315246ec5ce70421ae (patch) | |
tree | 3a796bcf71566ac513bae72f488cf80a604a3451 /dev-python/crispy-bootstrap5 | |
parent | dev-embedded/libftdi: enable py3.11 for live ebuild (diff) | |
download | gentoo-3d870225af3c41a7b5f45f315246ec5ce70421ae.tar.gz gentoo-3d870225af3c41a7b5f45f315246ec5ce70421ae.tar.bz2 gentoo-3d870225af3c41a7b5f45f315246ec5ce70421ae.zip |
dev-python/crispy-bootstrap5: new package, add 0.7
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
Diffstat (limited to 'dev-python/crispy-bootstrap5')
-rw-r--r-- | dev-python/crispy-bootstrap5/Manifest | 1 | ||||
-rw-r--r-- | dev-python/crispy-bootstrap5/crispy-bootstrap5-0.7.ebuild | 25 | ||||
-rw-r--r-- | dev-python/crispy-bootstrap5/files/crispy-bootstrap5-0.7-test.patch | 172 | ||||
-rw-r--r-- | dev-python/crispy-bootstrap5/metadata.xml | 12 |
4 files changed, 210 insertions, 0 deletions
diff --git a/dev-python/crispy-bootstrap5/Manifest b/dev-python/crispy-bootstrap5/Manifest new file mode 100644 index 000000000000..f709b3c7df14 --- /dev/null +++ b/dev-python/crispy-bootstrap5/Manifest @@ -0,0 +1 @@ +DIST crispy-bootstrap5-0.7.gh.tar.gz 29728 BLAKE2B 1209ab7d8340e30c71050ed60a86d8233f454c49d2f6d4fcf4f1d6be4a7d1c470c3f907211c1ee352fc3eba9a74e8152d41162e4d6f8113538eccbb3522409a5 SHA512 c73305c6661719cd45989679c33751f44b318b39f895e0328257eaffcdd52b726be9be624ebecb6bcba35635f0f615bb83e48c775e0f05c40f8f1e6e80ab737c diff --git a/dev-python/crispy-bootstrap5/crispy-bootstrap5-0.7.ebuild b/dev-python/crispy-bootstrap5/crispy-bootstrap5-0.7.ebuild new file mode 100644 index 000000000000..334d9c3af66d --- /dev/null +++ b/dev-python/crispy-bootstrap5/crispy-bootstrap5-0.7.ebuild @@ -0,0 +1,25 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} ) +inherit distutils-r1 + +DESCRIPTION="Bootstrap5 template pack for django-crispy-forms" +HOMEPAGE=" + https://pypi.org/project/crispy-bootstrap5/ +" +SRC_URI="https://github.com/django-crispy-forms/${PN}/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="dev-python/django-crispy-forms[${PYTHON_USEDEP}]" + +distutils_enable_tests pytest + +PATCHES=( "${FILESDIR}"/${P}-test.patch ) diff --git a/dev-python/crispy-bootstrap5/files/crispy-bootstrap5-0.7-test.patch b/dev-python/crispy-bootstrap5/files/crispy-bootstrap5-0.7-test.patch new file mode 100644 index 000000000000..914b48385437 --- /dev/null +++ b/dev-python/crispy-bootstrap5/files/crispy-bootstrap5-0.7-test.patch @@ -0,0 +1,172 @@ +From 69ff88bed286a76e6216a54ecf93a0b27d87bc8d Mon Sep 17 00:00:00 2001 +From: David Smith <39445562+smithdc1@users.noreply.github.com> +Date: Thu, 15 Dec 2022 08:01:04 +0000 +Subject: [PATCH] Fixed tests for crispy-forms 2.x (#133) + +--- + tests/templates/custom_field_template.html | 2 +- + tests/templates/custom_form_template.html | 2 +- + .../custom_form_template_with_context.html | 2 +- + tests/test_layout.py | 14 ++++++++++++-- + tests/test_layout_objects.py | 12 ++++++++++++ + tox.ini | 2 -- + 6 files changed, 27 insertions(+), 7 deletions(-) + +diff --git a/tests/templates/custom_field_template.html b/tests/templates/custom_field_template.html +index 4724226..04f0274 100644 +--- a/tests/templates/custom_field_template.html ++++ b/tests/templates/custom_field_template.html +@@ -1,2 +1,2 @@ + <h1>Special custom field</h1> +-{% include 'bootstrap/field.html' %} ++{% include 'bootstrap5/field.html' %} +diff --git a/tests/templates/custom_form_template.html b/tests/templates/custom_form_template.html +index f2da757..c09b4c7 100644 +--- a/tests/templates/custom_form_template.html ++++ b/tests/templates/custom_form_template.html +@@ -1,2 +1,2 @@ + <h1>Special custom form</h1> +-{% include "bootstrap/whole_uni_form.html" %} ++{% include "bootstrap5/whole_uni_form.html" %} +diff --git a/tests/templates/custom_form_template_with_context.html b/tests/templates/custom_form_template_with_context.html +index 2378296..477997a 100644 +--- a/tests/templates/custom_form_template_with_context.html ++++ b/tests/templates/custom_form_template_with_context.html +@@ -1,4 +1,4 @@ + <h1>Special custom form with context passthrough</h1> + Got prefix: {{ prefix }}. +-{% include "bootstrap/whole_uni_form.html" %} ++{% include "bootstrap5/whole_uni_form.html" %} + Got suffix: {{ suffix }}. +diff --git a/tests/test_layout.py b/tests/test_layout.py +index 512facf..a2a72e8 100644 +--- a/tests/test_layout.py ++++ b/tests/test_layout.py +@@ -16,6 +16,7 @@ + from django.middleware.csrf import _get_new_csrf_string + from django.shortcuts import render + from django.template import Context, Template ++from django.test import override_settings + from django.urls import reverse + from django.utils.translation import gettext_lazy as _ + +@@ -36,6 +37,12 @@ + ) + from .utils import contains_partial, parse_expected, parse_form + ++CONVERTERS = { ++ "textinput": "inputtext textinput textInput", ++ "fileinput": "fileinput fileUpload", ++ "passwordinput": "textinput textInput", ++} ++ + + def test_invalid_unicode_characters(settings): + # Adds a BooleanField that uses non valid unicode characters "ñ" +@@ -331,6 +338,7 @@ def test_bs5_field_with_buttons_css_classes(): + assert parse_form(form) == parse_expected("field_with_buttons_failing.html") + + ++@override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_formset_layout(): + SampleFormSet = formset_factory(SampleForm, extra=3) + formset = SampleFormSet() +@@ -523,6 +531,7 @@ def test_keepcontext_context_manager(): + assert response.content.count(b"form-check-input") > 0 + + ++@override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_bootstrap5_form_inline(): + form = SampleForm() + form.helper = FormHelper() +@@ -557,7 +566,7 @@ def test_update_attributes_class(): + form.helper.layout = Layout("email", Field("password1"), "password2") + form.helper["password1"].update_attributes(css_class="hello") + html = render_crispy_form(form) +- assert html.count(' class="hello textinput') == 1 ++ assert html.count(' class="hello') == 1 + form.helper = FormHelper() + form.helper.layout = Layout( + "email", +@@ -566,7 +575,7 @@ def test_update_attributes_class(): + ) + form.helper["password1"].update_attributes(css_class="hello2") + html = render_crispy_form(form) +- assert html.count(' class="hello hello2 textinput') == 1 ++ assert html.count(' class="hello hello2') == 1 + + + def test_file_field(): +@@ -611,6 +620,7 @@ def test_html_label_escape(): + assert "<>&" in html + + ++@override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_tabular_formset_layout(): + SampleFormSet = formset_factory(SampleForm, extra=3) + formset = SampleFormSet() +diff --git a/tests/test_layout_objects.py b/tests/test_layout_objects.py +index b386c0b..0e3dde7 100644 +--- a/tests/test_layout_objects.py ++++ b/tests/test_layout_objects.py +@@ -21,6 +21,7 @@ + from crispy_forms.utils import render_crispy_form + from django import forms + from django.template import Context, Template ++from django.test import override_settings + from django.utils.translation import activate, deactivate + from django.utils.translation import gettext as _ + +@@ -37,6 +38,12 @@ + ) + from .utils import parse_expected, parse_form + ++CONVERTERS = { ++ "textinput": "inputtext textinput textInput", ++ "fileinput": "fileinput fileUpload", ++ "passwordinput": "textinput textInput", ++} ++ + + def test_field_with_custom_template(): + test_form = SampleForm() +@@ -202,6 +209,7 @@ def test_custom_django_widget(self): + html = render_crispy_form(form) + assert 'class="form-check-input"' in html + ++ @override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_prepended_appended_text(self): + test_form = SampleForm() + test_form.helper = FormHelper() +@@ -223,6 +231,7 @@ def test_inline_radios(self): + html = render_crispy_form(test_form) + assert html.count('form-check-inline"') == 2 + ++ @override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_accordion_and_accordiongroup(self): + random.seed(0) + form = SampleForm() +@@ -269,6 +278,7 @@ def test_accordion_active_false_not_rendered(self): + == 0 + ) + ++ @override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_bs5accordion(self): + random.seed(0) + form = SampleForm() +@@ -315,6 +325,7 @@ def test_bs5accordion_active_false_not_rendered(self): + == 0 + ) + ++ @override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_bs5accordion_flush(self): + random.seed(0) + test_form = SampleForm() +@@ -329,6 +340,7 @@ def test_bs5accordion_flush(self): + ) + assert parse_form(test_form) == parse_expected("accordion_flush.html") + ++ @override_settings(CRISPY_CLASS_CONVERTERS=CONVERTERS) + def test_bs5accordion_always_open(self): + random.seed(0) + test_form = SampleForm() diff --git a/dev-python/crispy-bootstrap5/metadata.xml b/dev-python/crispy-bootstrap5/metadata.xml new file mode 100644 index 000000000000..4883d99a164b --- /dev/null +++ b/dev-python/crispy-bootstrap5/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>tupone@gentoo.org</email> + <name>Tupone Alfredo</name> + </maintainer> + <upstream> + <remote-id type="pypi">crispy-bootstrap5</remote-id> + <remote-id type="github">django-crispy-forms/crispy-bootstrap5</remote-id> + </upstream> +</pkgmetadata> |