tenant = ManagedEnvironment::factory()->create(); $this->policy = Policy::factory()->create([ 'managed_environment_id' => $this->tenant->id, ]); $this->user = User::factory()->create(); [$this->user, $this->tenant] = createUserWithTenant(tenant: $this->tenant, user: $this->user, role: 'owner', fixtureProfile: 'credential-enabled'); }); it('renders policy version view without any Graph calls during render', function () { mock(GraphClientInterface::class) ->shouldNotReceive('listPolicies') ->shouldNotReceive('getPolicy') ->shouldNotReceive('getOrganization') ->shouldNotReceive('applyPolicy') ->shouldNotReceive('getServicePrincipalPermissions') ->shouldNotReceive('request'); $version = PolicyVersion::factory()->create([ 'managed_environment_id' => $this->tenant->id, 'policy_id' => $this->policy->id, 'version_number' => 1, 'assignments' => [ [ 'id' => 'assignment-1', 'intent' => 'apply', 'target' => [ '@odata.type' => '#microsoft.graph.groupAssignmentTarget', 'groupId' => 'group-123', ], ], ], ]); $this->actingAs($this->user); $response = $this ->withSession([ WorkspaceContext::SESSION_KEY => (int) $this->tenant->workspace_id, WorkspaceContext::LAST_TENANT_IDS_SESSION_KEY => [ (string) $this->tenant->workspace_id => (int) $this->tenant->getKey(), ], ]) ->get(PolicyVersionResource::getUrl('view', ['record' => $version], panel: 'admin', tenant: $this->tenant)); $response->assertOk(); });