{"library":"parameterized","code":"import unittest\nfrom parameterized import parameterized, param\nimport math\n\nclass TestMath(unittest.TestCase):\n\n    @parameterized([\n        (2, 2, 4),\n        (2, 3, 8),\n        (1, 9, 1),\n        (0, 9, 0),\n    ])\n    def test_pow(self, base, exponent, expected):\n        self.assertEqual(math.pow(base, exponent), expected)\n\n    @parameterized.expand([\n        (\"negative\", -1.5, -2.0),\n        (\"integer\", 1, 1.0),\n        (\"large fraction\", 1.6, 1),\n    ])\n    def test_floor(self, name, input_val, expected):\n        self.assertEqual(math.floor(input_val), expected)\n\n    @parameterized_class(('a', 'b', 'expected_sum'), [\n        (1, 2, 3),\n        (5, 5, 10),\n    ])\n    class TestMathClass(unittest.TestCase):\n        def test_add(self):\n            self.assertEqual(self.a + self.b, self.expected_sum)\n\n# To run these tests, you would typically use:\n# unittest.main(argv=['first-arg-is-ignored'], exit=False)\n# or a test runner like pytest/nose.","lang":"python","description":"This quickstart demonstrates how to use `parameterized` with Python's built-in `unittest` framework. It shows examples for parameterizing individual test methods using `@parameterized` and `@parameterized.expand`, and how to parameterize an entire test class using `@parameterized_class`.","tag":null,"tag_description":null,"last_tested":"2026-04-24","results":[{"runtime":"python:3.10-alpine","exit_code":1},{"runtime":"python:3.10-slim","exit_code":1},{"runtime":"python:3.11-alpine","exit_code":1},{"runtime":"python:3.11-slim","exit_code":1},{"runtime":"python:3.12-alpine","exit_code":1},{"runtime":"python:3.12-slim","exit_code":1},{"runtime":"python:3.13-alpine","exit_code":1},{"runtime":"python:3.13-slim","exit_code":1},{"runtime":"python:3.9-alpine","exit_code":1},{"runtime":"python:3.9-slim","exit_code":1}]}