### Question:
ImmutablePolicyBuilder implements PolicyBuilder { @Override public Policy build() { final Collection<Label> allLabels = getAllLabels(); final Collection<PolicyEntry> policyEntries = allLabels.stream() .map(lbl -> PoliciesModelFactory.newPolicyEntry(lbl, getFinalSubjects(lbl), getFinalResources(lbl))) .collect(Collectors.toList()); return ImmutablePolicy.of(id, lifecycle, revision, modified, created, policyEntries); } private  ImmutablePolicyBuilder(); static ImmutablePolicyBuilder newInstance(); static ImmutablePolicyBuilder of(final PolicyId id); static PolicyBuilder of(final PolicyId id, final Iterable<PolicyEntry> policyEntries); static PolicyBuilder of(final Policy existingPolicy); @Override LabelScoped forLabel(final Label label); @Override @Deprecated ImmutablePolicyBuilder setId(final CharSequence id); @Override ImmutablePolicyBuilder setId(final PolicyId id); @Override ImmutablePolicyBuilder setLifecycle(@Nullable final PolicyLifecycle lifecycle); @Override ImmutablePolicyBuilder setRevision(@Nullable final PolicyRevision revision); @Override ImmutablePolicyBuilder setModified(@Nullable final Instant modified); @Override ImmutablePolicyBuilder setCreated(@Nullable final Instant created); @Override ImmutablePolicyBuilder set(final PolicyEntry entry); @Override ImmutablePolicyBuilder setAll(final Iterable<PolicyEntry> entries); @Override ImmutablePolicyBuilder remove(final CharSequence label); @Override ImmutablePolicyBuilder removeAll(final Iterable<PolicyEntry> entries); @Override ImmutablePolicyBuilder setSubjectsFor(final CharSequence label, final Subjects subjects); @Override ImmutablePolicyBuilder setSubjectFor(final CharSequence label, final Subject subject); @Override ImmutablePolicyBuilder removeSubjectFor(final CharSequence label,
            final CharSequence subjectIssuerWithId); @Override ImmutablePolicyBuilder removeSubjectFor(final CharSequence label, final Subject subject); @Override ImmutablePolicyBuilder setResourcesFor(final CharSequence label, final Resources resources); @Override ImmutablePolicyBuilder setResourceFor(final CharSequence label, final Resource resource); @Override ImmutablePolicyBuilder removeResourceFor(final CharSequence label, final ResourceKey resourceKey); @Override ImmutablePolicyBuilder removeResourceFor(final CharSequence label, final Resource resource); @Override ImmutablePolicyBuilder setPermissionsFor(final CharSequence label, final ResourceKey resourceKey,
            final EffectedPermissions effectedPermissions); @Override ImmutablePolicyBuilder setGrantedPermissionsFor(final CharSequence label, final ResourceKey resourceKey,
            final Permissions grantedPermissions); @Override ImmutablePolicyBuilder setRevokedPermissionsFor(final CharSequence label, final ResourceKey resourceKey,
            final Permissions revokedPermissions); @Override Policy build();  }### Answer:
@Test public void createEmptyPolicy() { final Policy policy = underTest.build(); assertThat(policy) .hasId(POLICY_ID) .hasNamespace(POLICY_NS); }