Example #1
0
        return Promise.all(_.map(tableList, (id: TableID) => {
          let response: TableDetailsResponseMessage;

          fetchMock.reMock(re, "get", (url: string, requestObj: RequestInit) => {
            let result = url.match(re);
            let database = result[1];
            let table = result[2];

            assert.deepEqual(state.databaseInfo.tableDetails[databases.generateTableID(id.db, id.table)], { inFlight: true, valid: false });

            response = new protos.cockroach.server.serverpb.TableDetailsResponse(dbTables[databases.generateTableID(database, table)]);

            return {
              sendAsJson: false,
              body: response.toArrayBuffer(),
            };
          });

          return databases.refreshTableDetails(id.db, id.table)(dispatch, () => state).then(() => {
            let generatedID = databases.generateTableID(id.db, id.table);
            assert.deepEqual(state.databaseInfo.tableDetails[generatedID].data, new protos.cockroach.server.serverpb.TableDetailsResponse(dbTables[id.db][id.table]));
            assert.deepEqual(state.databaseInfo.tableDetails[generatedID], {
              inFlight: false,
              valid: true,
              data: response,
              lastError: null,
            });
          });
        }));
Example #2
0
        return Promise.all(_.map([DB1, DB2], (db: string) => {
          let response: DatabaseDetailsResponseMessage;

          fetchMock.reMock(re, "get", (url: string, requestObj: RequestInit) => {
            let database = url.match(re)[1];

            assert.deepEqual(state.databaseInfo.databaseDetails[database], { inFlight: true, valid: false });

            response = new protos.cockroach.server.serverpb.DatabaseDetailsResponse(dbs[database]);

            return {
              sendAsJson: false,
              body: response.toArrayBuffer(),
            };
          });

          return databases.refreshDatabaseDetails(db)(dispatch, () => state).then(() => {
            assert.deepEqual(new protos.cockroach.server.serverpb.DatabaseDetailsResponse(dbs[db]), response);
            assert.deepEqual(state.databaseInfo.databaseDetails[db].data, new protos.cockroach.server.serverpb.DatabaseDetailsResponse(dbs[db]));
            assert.deepEqual(state.databaseInfo.databaseDetails[db], {
              inFlight: false,
              valid: true,
              data: response,
              lastError: null,
            });
          });
        }));
Example #3
0
        return Promise.all(_.map(tableList, (id: TableID) => {
          fetchMock.reMock(new RegExp("/_admin/v1/databases/.+/tables/.+"), "get", (url: string, requestObj: RequestInit) => {
            assert.deepEqual(state.databaseInfo.tableDetails[databases.generateTableID(id.db, id.table)], { inFlight: true, valid: false });

            return { throws: error };
          });

          return databases.refreshTableDetails(id.db, id.table)(dispatch, () => state).then(() => {
            let generatedID = databases.generateTableID(id.db, id.table);
            assert.deepEqual(state.databaseInfo.tableDetails[generatedID], {
              inFlight: false,
              valid: false,
              lastError: error,
            });
          });
        }));
Example #4
0
        return Promise.all(_.map([DB1, DB2], (db: string) => {
          fetchMock.reMock(re, "get", (url: string, requestObj: RequestInit) => {
            let database = url.match(re)[1];

            assert.deepEqual(state.databaseInfo.databaseDetails[database], { inFlight: true, valid: false });

            return { throws: error };
          });

          return databases.refreshDatabaseDetails(db)(dispatch, () => state).then(() => {
            assert.deepEqual(state.databaseInfo.databaseDetails[db], {
              inFlight: false,
              valid: false,
              lastError: error,
            });
          });
        }));
fetchMock.mock("http://test.com", 200);
fetchMock.mock(/test\.com/, 200);
fetchMock.mock(() => true, 200);
fetchMock.mock((url, opts) => true, 200);

fetchMock.mock(/test/, "test").mock(/test/, { a: "b" });
fetchMock.mock(/test/, {
    status: 200,
    headers: {
        "test": "test"
    },
    body: {
        a: "b"
    }
});

fetchMock.reMock();

fetchMock.restore().reset();

fetchMock.calls().matched[0][1].body;
fetchMock.calls().unmatched[0][0].toUpperCase();
fetchMock.calls("http://test.com")[0][0].toUpperCase();
fetchMock.calls("http://test.com")[0][1].body;

fetchMock.called("http://test.com");

fetchMock.lastCall()[1].body;
fetchMock.lastUrl();
fetchMock.lastOptions();