Ensure that this works:

```python
@setup
def mytask():
    print("I am a setup task")

with dag_maker() as dag:
    mytask.override(task_id='newtask')

assert len(dag.task_group.children) == 1
setup_task = dag.task_group.children["newtask"]
assert setup_task._is_setup
```
and teardown also works
@setup
        @task_group
        def mygroup():
            @task
            def mytask():
                print("I am a setup task")
            mytask()
        with dag_maker():
            with pytest.raises(
                expected_exception=AirflowException,
                match="Task groups cannot be marked as setup or teardown.",
            ):
                mygroup()
    def test_teardown_taskgroup_decorator(self, dag_maker):
        @teardown
        @task_group
        def mygroup():
            @task
            def mytask():
                print("I am a teardown task")
            mytask()
        with dag_maker():
            with pytest.raises(
                expected_exception=AirflowException,
                match="Task groups cannot be marked as setup or teardown.",
            ):
                mygroup()
    @pytest.mark.parametrize("on_failure_fail_dagrun", [True, False])
    def test_teardown_task_decorators_works_with_on_failure_fail_dagrun(