"""Tests for Validation.""" from unittest.mock import MagicMock from flask import Request from flask import Response from marketing.constants import header from marketing.validation import validation def run_with_reject_grass_headers(headers): """Submit request with headers and get response.""" request = MagicMock(spec=Request, headers=headers) success_response = MagicMock(spec=Response, status_code=200) def inner(): return success_response return validation.reject_grass_headers(request)(f=inner)() def test_reject_grass_headers(): """Test that 400 return when grass request made.""" result = run_with_reject_grass_headers({ header.GRASS_ACCOUNT_ID: 1234, header.GRASS_ACCOUNT_TYPE: 'subaccount'}) assert result.status_code == 400 def test_reject_grass_headers_passing(): """Test that inner function called when not grass.""" result = run_with_reject_grass_headers({ 'foo': 'bar'}) assert result.status_code == 200