mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-04-08 02:42:08 +01:00
* Upgrade typescript to 4.9.5 * Fix compile issue and put back files in tsconfig.strict.json * Update test snapshots * Fix jest tests by upgrading jest and other related packages. * Attempt to fix playwright test * Revert "Attempt to fix playwright test" This reverts commit 8293f34c9ce3901eb160a56526c59e3d3e1e343e. * 2nd attempt to fix example test * fix waitFor in playwright * Remove unused describe section * Attempt to fix e2e test * Revert "Attempt to fix e2e test" This reverts commit 9745bcd2efccf92e33e62e4563349cb76e6236de. * Upgrade playwright to latest * Revert "Upgrade playwright to latest" This reverts commit e2ea1d01895f9db157a92a5167a7865b7cc43266. * Error test on e2e * Revert "Error test on e2e" This reverts commit 124e3764f72fff70df9cc1a2e93d12faa7b507e9. * Try to select dropdown item by xpath selector * Revert "Try to select dropdown item by xpath selector" This reverts commit 8eb42a64e23cee589a7c0a809c039ecc7867b7ba. * Attempt to wait until page is fully loaded * Revert "Attempt to wait until page is fully loaded" This reverts commit bb43fcea6e71e593f7d1a3e374e9f1d57052ab70. * Use playwright selectOption to select dropdown option * Revert "Use playwright selectOption to select dropdown option" This reverts commit daa8cd09304f68093df2d94f4bd1139cb367465a. * Select dropdown option with playwright api instead of manual click * c7ab4c7ecf7b05f32a85568bce1a667ad8c62703Revert "Select dropdown option with playwright api instead of manual click" This reverts commit c7ab4c7ecf7b05f32a85568bce1a667ad8c62703. * Wait for 5s after dropdown click * Revert "Wait for 5s after dropdown click" This reverts commit 847e9ad33fbfac99a947fc088e1c8c1c14c57853. * Try forcing click * Revert "Try forcing click" This reverts commit 29b9fa1bda18dd3aba7853b20c6215d971bc826a. * Force click on the dropdown and set viewport size bigger. * Force click on the dropdown and set viewport size bigger. * try force clicking option * Skip container test on webkit * Add branded browsers to e2e tests --------- Co-authored-by: Ashley Stanton-Nurse <ashleyst@microsoft.com>
104 lines
2.9 KiB
TypeScript
104 lines
2.9 KiB
TypeScript
import { Platform, resetConfigContext, updateConfigContext } from "../ConfigContext";
|
|
import { updateUserContext } from "../UserContext";
|
|
import { endpoint, getTokenFromAuthService, requestPlugin } from "./CosmosClient";
|
|
|
|
describe("getTokenFromAuthService", () => {
|
|
beforeEach(() => {
|
|
delete window.dataExplorer;
|
|
resetConfigContext();
|
|
window.fetch = jest.fn().mockImplementation(() => {
|
|
return {
|
|
json: () => "{}",
|
|
headers: new Map(),
|
|
};
|
|
});
|
|
});
|
|
|
|
afterEach(() => {
|
|
jest.restoreAllMocks();
|
|
});
|
|
|
|
it("builds the correct URL in production", () => {
|
|
updateConfigContext({
|
|
BACKEND_ENDPOINT: "https://main.documentdb.ext.azure.com",
|
|
});
|
|
getTokenFromAuthService("GET", "dbs", "foo");
|
|
expect(window.fetch).toHaveBeenCalledWith(
|
|
"https://main.documentdb.ext.azure.com/api/guest/runtimeproxy/authorizationTokens",
|
|
expect.any(Object),
|
|
);
|
|
});
|
|
|
|
it("builds the correct URL in dev", () => {
|
|
updateConfigContext({
|
|
BACKEND_ENDPOINT: "https://localhost:1234",
|
|
});
|
|
getTokenFromAuthService("GET", "dbs", "foo");
|
|
expect(window.fetch).toHaveBeenCalledWith(
|
|
"https://localhost:1234/api/guest/runtimeproxy/authorizationTokens",
|
|
expect.any(Object),
|
|
);
|
|
});
|
|
});
|
|
|
|
describe("endpoint", () => {
|
|
it("falls back to _databaseAccount", () => {
|
|
updateUserContext({
|
|
databaseAccount: {
|
|
id: "foo",
|
|
name: "foo",
|
|
location: "foo",
|
|
type: "foo",
|
|
kind: "foo",
|
|
properties: {
|
|
documentEndpoint: "bar",
|
|
gremlinEndpoint: "foo",
|
|
tableEndpoint: "foo",
|
|
cassandraEndpoint: "foo",
|
|
},
|
|
},
|
|
});
|
|
expect(endpoint()).toEqual("bar");
|
|
});
|
|
it("uses _endpoint if set", () => {
|
|
updateUserContext({
|
|
endpoint: "baz",
|
|
});
|
|
expect(endpoint()).toEqual("baz");
|
|
});
|
|
});
|
|
|
|
describe("requestPlugin", () => {
|
|
beforeEach(() => {
|
|
resetConfigContext();
|
|
});
|
|
|
|
describe("Hosted", () => {
|
|
it("builds a proxy URL in development", () => {
|
|
const next = jest.fn();
|
|
updateConfigContext({
|
|
platform: Platform.Hosted,
|
|
BACKEND_ENDPOINT: "https://localhost:1234",
|
|
PROXY_PATH: "/proxy",
|
|
});
|
|
const headers = {};
|
|
const endpoint = "https://docs.azure.com";
|
|
const path = "/dbs/foo";
|
|
requestPlugin({ endpoint, headers, path } as any, undefined, next as any);
|
|
expect(next.mock.calls[0][0]).toMatchSnapshot();
|
|
});
|
|
});
|
|
|
|
describe("Emulator", () => {
|
|
it("builds a url for emulator proxy via webpack", () => {
|
|
const next = jest.fn();
|
|
updateConfigContext({ platform: Platform.Emulator, PROXY_PATH: "/proxy" });
|
|
const headers = {};
|
|
const endpoint = "";
|
|
const path = "/dbs/foo";
|
|
requestPlugin({ endpoint, headers, path } as any, undefined, next as any);
|
|
expect(next.mock.calls[0][0]).toMatchSnapshot();
|
|
});
|
|
});
|
|
});
|