#!/usr/bin/env python3 """ Quick test for updated worker permissions """ import sys import os sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'app')) from permissions_simple import validate_user_modules def test_worker_multiple_modules(): """Test that workers can now have multiple modules""" print("Testing Updated Worker Module Permissions") print("=" * 45) test_cases = [ # (role, modules, expected_result, description) ('worker', ['quality'], True, "Worker with quality module"), ('worker', ['warehouse'], True, "Worker with warehouse module"), ('worker', ['quality', 'warehouse'], True, "Worker with multiple modules (NEW)"), ('worker', ['quality', 'warehouse', 'labels'], True, "Worker with all modules (NEW)"), ('worker', [], False, "Worker with no modules"), ('manager', ['quality', 'warehouse'], True, "Manager with multiple modules"), ] passed = 0 failed = 0 for role, modules, expected, description in test_cases: is_valid, error_msg = validate_user_modules(role, modules) status = "PASS" if is_valid == expected else "FAIL" print(f"{status}: {description}") print(f" Role: {role}, Modules: {modules} -> {is_valid} (expected {expected})") if error_msg: print(f" Error: {error_msg}") print() if is_valid == expected: passed += 1 else: failed += 1 print(f"Results: {passed} passed, {failed} failed") print("\nāœ… Workers can now have multiple modules!" if failed == 0 else "āŒ Some tests failed") if __name__ == "__main__": test_worker_multiple_modules()