All files / rpc rpc.ts

100% Statements 9/9
100% Branches 2/2
100% Functions 5/5
100% Lines 9/9

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 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42                    23x   23x 23x       4x       39x                   3x       4x 3x   4x      
import {
  FeeBumpTransaction,
  rpc,
  Transaction,
  TransactionBuilder,
} from "shelter-sdk";
import type { FakeServer } from "../fixtures/fixtures";
import type { Api } from "@stellar/stellar-sdk/rpc";
 
export class Rpc {
  private _cachedNetwork: string = "";
  constructor(
    private readonly _server: any,
    private readonly _rpc: any = rpc
  ) {}
 
  url(): string {
    return this._server.serverURL;
  }
 
  server(): rpc.Server | FakeServer {
    return this._server;
  }
 
  assembleTransaction(
    raw: Transaction | FeeBumpTransaction | any,
    simulation:
      | Api.SimulateTransactionResponse
      | Api.RawSimulateTransactionResponse
      | any
  ): TransactionBuilder | any {
    return this._rpc.assembleTransaction(raw, simulation);
  }
 
  async network(): Promise<string> {
    if (!this._cachedNetwork) {
      this._cachedNetwork = (await this._server.getNetwork()).passphrase;
    }
    return this._cachedNetwork;
  }
}