def test_get__good(self, client, plan_factory, preflight_result_factory): plan = plan_factory() preflight = preflight_result_factory( plan=plan, user=client.user, org_id=client.user.org_id, ) response = client.get(reverse("plan-preflight", kwargs={"pk": plan.id})) assert response.status_code == 200 assert response.json() == { "id": str(preflight.id), "instance_url": client.user.instance_url, "org_id": "00Dxxxxxxxxxxxxxxx", "plan": str(plan.id), "created_at": format_timestamp(preflight.created_at), "is_valid": True, "status": "started", "results": {}, "error_count": 0, "warning_count": 0, "is_ready": False, "user": str(client.user.id), "edited_at": format_timestamp(preflight.edited_at), }
def test_job__is_public_anon(self, anon_client, job_factory): job = job_factory(is_public=True, org_id="00Dxxxxxxxxxxxxxxx") url = reverse("job-detail", kwargs={"pk": job.id}) response = anon_client.get(url) assert response.status_code == 200 assert response.json() == { "id": str(job.id), "creator": None, "plan": str(job.plan.id), "instance_url": None, "org_id": None, "steps": [], "results": {}, "error_count": 0, "warning_count": 0, "created_at": format_timestamp(job.created_at), "enqueued_at": None, "job_id": None, "status": "started", "org_name": None, "org_type": "", "is_production_org": False, "is_public": True, "user_can_edit": False, "message": "", "error_message": "", "edited_at": format_timestamp(job.edited_at), "product_slug": str(job.plan.version.product.slug), "version_label": str(job.plan.version.label), "version_is_most_recent": True, "plan_slug": str(job.plan.slug), }
def test_job__is_public(self, client, job_factory): job = job_factory(is_public=True, org_name="Secret Org", org_id="00Dxxxxxxxxxxxxxxx") response = client.get(reverse("job-detail", kwargs={"pk": job.id})) assert response.status_code == 200 assert response.json() == { "id": str(job.id), "creator": None, "plan": str(job.plan.id), "organization_url": None, "org_id": None, "steps": [], "results": {}, "created_at": format_timestamp(job.created_at), "enqueued_at": None, "job_id": None, "status": "started", "org_name": None, "org_type": "", "is_production_org": False, "error_count": 0, "warning_count": 0, "is_public": True, "user_can_edit": False, "message": "", "error_message": "", "edited_at": format_timestamp(job.edited_at), }
def test_queryset_anonymous_scratch_org(self, anon_client, job_factory, scratch_org_factory): org_id = "00Dyyyyyyyyyyyyyyy" uuid = str(uuid4()) job = job_factory( is_public=False, org_id=org_id, ) scratch_org_factory( status=ScratchOrg.Status.complete, org_id=org_id, uuid=uuid, ) url = reverse("job-detail", kwargs={"pk": job.id}) session = anon_client.session session["scratch_org_id"] = uuid session.save() response = anon_client.get(url) assert response.status_code == 200 assert response.json() == { "id": str(job.id), "creator": None, "plan": str(job.plan.id), "instance_url": None, "org_id": None, "steps": [], "results": {}, "error_count": 0, "warning_count": 0, "created_at": format_timestamp(job.created_at), "enqueued_at": None, "job_id": None, "status": "started", "org_name": None, "org_type": "", "is_production_org": False, "is_public": False, "user_can_edit": False, "message": "", "error_message": "", "edited_at": format_timestamp(job.edited_at), "product_slug": str(job.plan.version.product.slug), "version_label": str(job.plan.version.label), "version_is_most_recent": True, "plan_slug": str(job.plan.slug), }
def test_job__your_own(self, client, user_factory, job_factory): user = user_factory(org_name="Secret Org") client.force_login(user) job = job_factory(user=user, org_id=client.user.org_id) response = client.get(reverse("job-detail", kwargs={"pk": job.id})) assert response.status_code == 200 assert response.json() == { "id": str(job.id), "creator": { "username": job.user.sf_username, "is_staff": False }, "plan": str(job.plan.id), "steps": [], "instance_url": "https://example.com", "org_id": "00Dxxxxxxxxxxxxxxx", "results": {}, "created_at": format_timestamp(job.created_at), "enqueued_at": None, "job_id": None, "status": "started", "org_name": "Secret Org", "org_type": "", "is_production_org": False, "error_count": 0, "warning_count": 0, "is_public": False, "user_can_edit": True, "message": "", "error_message": "", "edited_at": format_timestamp(job.edited_at), "product_slug": str(job.plan.version.product.slug), "version_label": str(job.plan.version.label), "version_is_most_recent": True, "plan_slug": str(job.plan.slug), }
def test_version(self, client, version_factory): version = version_factory() response = client.get( reverse("version-detail", kwargs={"pk": version.id})) assert response.status_code == 200 assert response.json() == { "id": str(version.id), "product": str(version.product.id), "label": version.label, "description": "A sample version.", "created_at": format_timestamp(version.created_at), "primary_plan": None, "secondary_plan": None, "is_listed": True, }
def test_get_first_page(self, rf, product_factory, version_factory, user_factory): request = rf.get("") request.query_params = {} request.user = user_factory() product = product_factory(is_listed=True) version = version_factory(product=product) category = product.category serializer = ProductCategorySerializer(category, context={"request": request}) results = serializer.data["first_page"].pop("results") assert serializer.data["first_page"] == { "count": 1, "previous": None, "next": None, } expected = [ { "id": str(product.id), "title": product.title, "description": "<p>This is a sample product.</p>", "short_description": "", "click_through_agreement": "", "category": "salesforce", "color": "#FFFFFF", "icon": None, "image": None, "most_recent_version": { "id": str(version.id), "product": str(product.id), "label": str(version.label), "description": "A sample version.", "created_at": format_timestamp(version.created_at), "primary_plan": None, "secondary_plan": None, "is_listed": True, }, "slug": product.slug, "old_slugs": [], "is_allowed": True, "is_listed": True, "order_key": 0, "not_allowed_instructions": None, "layout": "Default", } ] assert results == expected