posthog-js supports person.set_once but our backend doesn't. Make sure we can pass through `$set_once` on an `$identify` call, and only set the properties within if the properties aren't already set on the user.
posthog/tasks/test/test_process_event.py
},
                    },
                    team_id,
                    now().isoformat(),
                    now().isoformat(),
                )
            self.assertEqual(Person.objects.get().distinct_ids, ["2"])
            event = get_events()[0]
            self.assertEqual(event.event, "$autocapture")
            elements = get_elements(event.id)
            self.assertEqual(elements[0].tag_name, "a")
            self.assertEqual(elements[0].attr_class, ["btn", "btn-sm"])
            self.assertEqual(elements[1].order, 1)
            self.assertEqual(elements[1].text, "💻")
            self.assertEqual(event.distinct_id, "2")
            team = Team.objects.get()
            self.assertEqual(team.event_names, ["$autocapture"])
            self.assertEqual(
                team.event_names_with_usage, [{"event": "$autocapture", "volume": None, "usage_count": None,}]
            )
            self.assertEqual(team.event_properties, ["distinct_id", "token", "$ip"])
            self.assertEqual(
                team.event_properties_with_usage,
                [
                    {"key": "distinct_id", "usage_count": None, "volume": None},
                    {"key": "token", "usage_count": None, "volume": None},
                    {"key": "$ip", "usage_count": None, "volume": None},
                ],
            )
        def test_capture_no_element(self) -> None: