All files / src/gmail/providers gmailTransactionProvider.ts

100% Statements 7/7
100% Branches 0/0
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20  8x     8x 8x   8x       5x   5x       5x    
import ITransactionSourceProvider from "../../core/contracts/ITransactionSourceProvider";
import { injectables } from "../../core/types/injectables";
import IUsesGoogleOAuth2 from "../../googleOAuth2/contracts/IUsesGoogleOAuth2";
import GoogleOAuth2Identifiers from "../../googleOAuth2/types/googleOAuth2Identifiers";
import { DependencyInjector } from "../../dependencyInjector";
import AbstractTransactionProvider from "../../core/providers/abstractTransactionProvider";
 
export default class GmailTransactionProvider extends AbstractTransactionProvider implements IUsesGoogleOAuth2 {
    protected override transactionSourceProvider: ITransactionSourceProvider;
 
    public constructor() {
        super();
 
        this.transactionSourceProvider = null!;
    }
 
    public async useOAuth2IdentifiersAsync(identifiers: GoogleOAuth2Identifiers) {
        this.transactionSourceProvider = await DependencyInjector.Singleton.generateGmailServiceAsync(injectables.GmailTransactionSourceProviderGenerator, identifiers);
    }
}