@@ -453,7 +453,7 @@ final class GenerativeModelTests: XCTestCase {
453453 }
454454 }
455455
456- // TODO(andrewheard): Remove this test case after the Firebase Vertex AI API launch.
456+ // TODO(andrewheard): Remove this test case after the Vertex AI in Firebase API launch.
457457 func testGenerateContent_failure_firebaseMLAPINotEnabled( ) async throws {
458458 let expectedStatusCode = 403
459459 MockURLProtocol
@@ -494,7 +494,7 @@ final class GenerativeModelTests: XCTestCase {
494494 XCTAssertEqual ( error. status, . permissionDenied)
495495 XCTAssertTrue ( error. message
496496 . starts ( with: " Vertex AI in Firebase API has not been used in project " ) )
497- XCTAssertTrue ( error. isFirebaseMLServiceDisabledError ( ) )
497+ XCTAssertTrue ( error. isVertexAIInFirebaseServiceDisabledError ( ) )
498498 return
499499 } catch {
500500 XCTFail ( " Should throw GenerateContentError.internalError(RPCError); error thrown: \( error) " )
@@ -799,6 +799,7 @@ final class GenerativeModelTests: XCTestCase {
799799 XCTFail ( " Should have caught an error. " )
800800 }
801801
802+ // TODO(andrewheard): Remove this test case after the Vertex AI in Firebase API launch.
802803 func testGenerateContentStream_failure_firebaseMLAPINotEnabled( ) async throws {
803804 let expectedStatusCode = 403
804805 MockURLProtocol
@@ -824,6 +825,31 @@ final class GenerativeModelTests: XCTestCase {
824825 XCTFail ( " Should have caught an error. " )
825826 }
826827
828+ func testGenerateContentStream_failure_vertexAIInFirebaseAPINotEnabled( ) async throws {
829+ let expectedStatusCode = 403
830+ MockURLProtocol
831+ . requestHandler = try httpRequestHandler (
832+ forResource: " unary-failure-firebasevertexai-api-not-enabled " ,
833+ withExtension: " json " ,
834+ statusCode: expectedStatusCode
835+ )
836+
837+ do {
838+ let stream = try model. generateContentStream ( testPrompt)
839+ for try await _ in stream {
840+ XCTFail ( " No content is there, this shouldn't happen. " )
841+ }
842+ } catch let GenerateContentError . internalError( error as RPCError ) {
843+ XCTAssertEqual ( error. httpResponseCode, expectedStatusCode)
844+ XCTAssertEqual ( error. status, . permissionDenied)
845+ XCTAssertTrue ( error. message. starts ( with: " Vertex AI in Firebase API has not been used in project " ) )
846+ XCTAssertTrue ( error. isVertexAIInFirebaseServiceDisabledError ( ) )
847+ return
848+ }
849+
850+ XCTFail ( " Should have caught an error. " )
851+ }
852+
827853 func testGenerateContentStream_failureEmptyContent( ) async throws {
828854 MockURLProtocol
829855 . requestHandler = try httpRequestHandler (
0 commit comments