diff --git a/src/init/features/dataconnect/sdk.spec.ts b/src/init/features/dataconnect/sdk.spec.ts index 51a87af8099..6341310b730 100644 --- a/src/init/features/dataconnect/sdk.spec.ts +++ b/src/init/features/dataconnect/sdk.spec.ts @@ -54,69 +54,75 @@ describe("addSdkGenerateToConnectorYaml", () => { sinon.restore(); }); - it("should add javascriptSdk for web platform", () => { - addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); - expect(connectorYaml.generate?.javascriptSdk).to.deep.equal([ - { - outputDir: "../app/src/dataconnect-generated", - package: "@dataconnect/generated", - packageJsonDir: "../app", - react: false, - angular: false, - clientCache: {}, - }, - ]); - }); + describe("with fdcrealtime experiment enabled", () => { + beforeEach(() => { + sinon.stub(experiments, "isEnabled").withArgs("fdcrealtime").returns(true); + }); - it("should add javascriptSdk with react for web platform", () => { - app.frameworks = [Framework.REACT]; - addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); - expect(connectorYaml.generate?.javascriptSdk).to.deep.equal([ - { - outputDir: "../app/src/dataconnect-generated", - package: "@dataconnect/generated", - packageJsonDir: "../app", - react: true, - angular: false, - clientCache: {}, - }, - ]); - }); + it("should add javascriptSdk for web platform", () => { + addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); + expect(connectorYaml.generate?.javascriptSdk).to.deep.equal([ + { + outputDir: "../app/src/dataconnect-generated", + package: "@dataconnect/generated", + packageJsonDir: "../app", + react: false, + angular: false, + clientCache: {}, + }, + ]); + }); - it("should add dartSdk for flutter platform", () => { - app.platform = Platform.FLUTTER; - addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); - expect(connectorYaml.generate?.dartSdk).to.deep.equal([ - { - outputDir: "../app/lib/dataconnect_generated", - package: "dataconnect_generated/generated.dart", - clientCache: {}, - }, - ]); - }); + it("should add javascriptSdk with react for web platform", () => { + app.frameworks = [Framework.REACT]; + addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); + expect(connectorYaml.generate?.javascriptSdk).to.deep.equal([ + { + outputDir: "../app/src/dataconnect-generated", + package: "@dataconnect/generated", + packageJsonDir: "../app", + react: true, + angular: false, + clientCache: {}, + }, + ]); + }); - it("should add kotlinSdk for android platform", () => { - app.platform = Platform.ANDROID; - addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); - expect(connectorYaml.generate?.kotlinSdk).to.deep.equal([ - { - outputDir: "../app/src/main/kotlin", - package: "com.google.firebase.dataconnect.generated", - clientCache: {}, - }, - ]); - }); + it("should add dartSdk for flutter platform", () => { + app.platform = Platform.FLUTTER; + addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); + expect(connectorYaml.generate?.dartSdk).to.deep.equal([ + { + outputDir: "../app/lib/dataconnect_generated", + package: "dataconnect_generated/generated.dart", + clientCache: {}, + }, + ]); + }); - it("should add swiftSdk for ios platform", () => { - app.platform = Platform.IOS; - addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); - expect(connectorYaml.generate?.swiftSdk).to.deep.equal([ - { - outputDir: "../FirebaseDataConnectGenerated", - package: "DataConnectGenerated", - clientCache: {}, - }, - ]); + it("should add kotlinSdk for android platform", () => { + app.platform = Platform.ANDROID; + addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); + expect(connectorYaml.generate?.kotlinSdk).to.deep.equal([ + { + outputDir: "../app/src/main/kotlin", + package: "com.google.firebase.dataconnect.generated", + clientCache: {}, + }, + ]); + }); + + it("should add swiftSdk for ios platform", () => { + app.platform = Platform.IOS; + addSdkGenerateToConnectorYaml(connectorInfo, connectorYaml, app); + expect(connectorYaml.generate?.swiftSdk).to.deep.equal([ + { + outputDir: "../FirebaseDataConnectGenerated", + package: "DataConnectGenerated", + clientCache: {}, + }, + ]); + }); }); it("should add adminSdk for admin node platform", () => {