Unverified Commit 9927ccc5 authored by Maximilian Bosch's avatar Maximilian Bosch
Browse files

python3Packages.django-waffle: init at 5.0.0



Introduced as a new dependency for lausite-docs.

Co-Authored-By: default avatarMartin Weinelt <hexa@darmstadt.ccc.de>
parent 6c1bf14f
Loading
Loading
Loading
Loading
+48 −0
Original line number Diff line number Diff line
{
  buildPythonPackage,
  fetchFromGitHub,
  django,
  lib,
  setuptools,
  pytestCheckHook,
  pytest-django,
}:

buildPythonPackage (finalAttrs: {
  pname = "django-waffle";
  version = "5.0.0";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "django-waffle";
    repo = "django-waffle";
    tag = "v${finalAttrs.version}";
    hash = "sha256-wirB2Y4iONmAMVt9o8aTkeB1WQzcvktQOAMEeXMM1x8=";
  };

  patches = [
    # Middleware object requires a request -> response callable
    ./middleware-compat.patch
  ];

  build-system = [ setuptools ];

  dependencies = [ django ];

  nativeCheckInputs = [
    pytest-django
    pytestCheckHook
  ];

  preCheck = ''
    export DJANGO_SETTINGS_MODULE=test_settings
  '';

  meta = {
    changelog = "https://github.com/django-waffle/django-waffle/releases/tag/${finalAttrs.src.tag}";
    description = "Feature flipper for Django";
    homepage = "https://waffle.readthedocs.io/en/stable/";
    maintainers = [ lib.maintainers.ma27 ];
    license = lib.licenses.bsd3;
  };
})
+31 −0
Original line number Diff line number Diff line
diff --git a/waffle/tests/test_middleware.py b/waffle/tests/test_middleware.py
index 11af7c9..27293df 100644
--- a/waffle/tests/test_middleware.py
+++ b/waffle/tests/test_middleware.py
@@ -13,7 +13,7 @@ def test_set_cookies():
     assert 'dwf_foo' not in resp.cookies
     assert 'dwf_bar' not in resp.cookies
 
-    resp = WaffleMiddleware().process_response(get, resp)
+    resp = WaffleMiddleware(lambda request: HttpResponse()).process_response(get, resp)
     assert 'dwf_foo' in resp.cookies
     assert 'dwf_bar' in resp.cookies
 
@@ -27,7 +27,7 @@ def test_rollout_cookies():
                    'baz': [True, False],
                    'qux': [False, False]}
     resp = HttpResponse()
-    resp = WaffleMiddleware().process_response(get, resp)
+    resp = WaffleMiddleware(lambda request: HttpResponse()).process_response(get, resp)
     for k in get.waffles:
         cookie = f'dwf_{k}'
         assert cookie in resp.cookies
@@ -42,7 +42,7 @@ def test_testing_cookies():
     get.waffles = {}
     get.waffle_tests = {'foo': True, 'bar': False}
     resp = HttpResponse()
-    resp = WaffleMiddleware().process_response(get, resp)
+    resp = WaffleMiddleware(lambda request: HttpResponse()).process_response(get, resp)
     for k in get.waffle_tests:
         cookie = f'dwft_{k}'
         assert str(get.waffle_tests[k]) == resp.cookies[cookie].value
+2 −0
Original line number Diff line number Diff line
@@ -4426,6 +4426,8 @@ self: super: with self; {
  django-vite = callPackage ../development/python-modules/django-vite { };
  django-waffle = callPackage ../development/python-modules/django-waffle { };
  django-weasyprint = callPackage ../development/python-modules/django-weasyprint { };
  django-webpack-loader = callPackage ../development/python-modules/django-webpack-loader { };