def test_stripe_plan_null_product(self):
        """
        assert that plan.Product can be null for backwards compatibility
        though note that it is a Stripe required field
        """
        plan_data = deepcopy(FAKE_PLAN_II)
        del plan_data["product"]
        plan = Plan.sync_from_stripe_data(plan_data)

        self.assert_fks(
            plan,
            expected_blank_fks={"djstripe.Customer.coupon", "djstripe.Plan.product"},
        )

        assert that plan.Product can be null for backwards compatibility
        though note that it is a Stripe required field
        
tests/test_plan.py