mirror of
https://github.com/bitwarden/browser
synced 2025-12-16 08:13:42 +00:00
[PM-12357] - Using new Verified SSO Domain call for SSO (#11446)
* Added new SSO verified domain call and added calling of it behind feature flag.
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
import { mock } from "jest-mock-extended";
|
||||
import { lastValueFrom } from "rxjs";
|
||||
|
||||
import { VerifiedOrganizationDomainSsoDetailsResponse } from "@bitwarden/common/admin-console/abstractions/organization-domain/responses/verified-organization-domain-sso-details.response";
|
||||
import { ListResponse } from "@bitwarden/common/models/response/list.response";
|
||||
|
||||
import { ApiService } from "../../../abstractions/api.service";
|
||||
import { I18nService } from "../../../platform/abstractions/i18n.service";
|
||||
import { PlatformUtilsService } from "../../../platform/abstractions/platform-utils.service";
|
||||
@@ -81,6 +84,19 @@ const mockedOrganizationDomainSsoDetailsResponse = new OrganizationDomainSsoDeta
|
||||
mockedOrganizationDomainSsoDetailsServerResponse,
|
||||
);
|
||||
|
||||
const mockedVerifiedOrganizationDomain = {
|
||||
organizationIdentifier: "fake-org-identifier",
|
||||
organizationName: "fake-org",
|
||||
domainName: "fake-domain-name",
|
||||
};
|
||||
|
||||
const mockedVerifiedOrganizationDomainSsoResponse =
|
||||
new VerifiedOrganizationDomainSsoDetailsResponse(mockedVerifiedOrganizationDomain);
|
||||
|
||||
const mockedVerifiedOrganizationDomainSsoDetailsListResponse = {
|
||||
data: [mockedVerifiedOrganizationDomain],
|
||||
} as ListResponse<VerifiedOrganizationDomainSsoDetailsResponse>;
|
||||
|
||||
describe("Org Domain API Service", () => {
|
||||
let orgDomainApiService: OrgDomainApiService;
|
||||
|
||||
@@ -229,4 +245,21 @@ describe("Org Domain API Service", () => {
|
||||
|
||||
expect(result).toEqual(mockedOrganizationDomainSsoDetailsResponse);
|
||||
});
|
||||
|
||||
it("getVerifiedOrgDomainsByEmail should call ApiService.send with correct parameters and return response", async () => {
|
||||
const email = "test@example.com";
|
||||
apiService.send.mockResolvedValue(mockedVerifiedOrganizationDomainSsoDetailsListResponse);
|
||||
|
||||
const result = await orgDomainApiService.getVerifiedOrgDomainsByEmail(email);
|
||||
|
||||
expect(apiService.send).toHaveBeenCalledWith(
|
||||
"POST",
|
||||
"/organizations/domain/sso/verified",
|
||||
new OrganizationDomainSsoDetailsRequest(email),
|
||||
false, //anonymous
|
||||
true,
|
||||
);
|
||||
|
||||
expect(result.data).toContainEqual(mockedVerifiedOrganizationDomainSsoResponse);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -4,6 +4,7 @@ import { OrgDomainApiServiceAbstraction } from "../../abstractions/organization-
|
||||
import { OrgDomainInternalServiceAbstraction } from "../../abstractions/organization-domain/org-domain.service.abstraction";
|
||||
import { OrganizationDomainSsoDetailsResponse } from "../../abstractions/organization-domain/responses/organization-domain-sso-details.response";
|
||||
import { OrganizationDomainResponse } from "../../abstractions/organization-domain/responses/organization-domain.response";
|
||||
import { VerifiedOrganizationDomainSsoDetailsResponse } from "../../abstractions/organization-domain/responses/verified-organization-domain-sso-details.response";
|
||||
|
||||
import { OrganizationDomainSsoDetailsRequest } from "./requests/organization-domain-sso-details.request";
|
||||
import { OrganizationDomainRequest } from "./requests/organization-domain.request";
|
||||
@@ -109,4 +110,18 @@ export class OrgDomainApiService implements OrgDomainApiServiceAbstraction {
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
async getVerifiedOrgDomainsByEmail(
|
||||
email: string,
|
||||
): Promise<ListResponse<VerifiedOrganizationDomainSsoDetailsResponse>> {
|
||||
const result = await this.apiService.send(
|
||||
"POST",
|
||||
`/organizations/domain/sso/verified`,
|
||||
new OrganizationDomainSsoDetailsRequest(email),
|
||||
false, // anonymous
|
||||
true,
|
||||
);
|
||||
|
||||
return new ListResponse(result, VerifiedOrganizationDomainSsoDetailsResponse);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user