mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 04:57:33 +00:00
test(quotas): test exhausted cookie handling (#5788)
* fix: remove access interceptor for console * feat: template quota cookie value * feat: show dialog on exhausted requests * test: test quota exhausted screen * chore: add convencience npm scripts * test: ensure correct exhausted cookie handling * fix exhausted cookie handling * fix: send exhausted cookie from grpc-gateway * fix linting * refactor: remove ineffectual err assignments * create prerelease * test: simulate upgrading an instance * run all quota tests * fix quota exhausted screen * fix: release * fix linting * Update internal/api/grpc/server/gateway.go Co-authored-by: Livio Spring <livio.a@gmail.com> * use dynamic host header to find instance * add instance mgmt url to environment.json * read instance mgmt from environment.json * configure console * fix interceptors * fix: release * mgmt url comes from environment.json * don't check cookie on environment.json * fix: release * support hosts with default ports * fix: release * fix environment.json path * fix linting * docs: update lb example * print access logs to stdout * fix grpc gateway exhausted cookies * update backend * cleanup * fix: release * fix: release * exclude environment.json from cookie check * fix: release * fix: release * remove cookie before loading env * use UTC to delete the cookie * delete cookie before fetching env * fix: release * simplify cookie handling * lint * fix: set exhausted cookie with env json * lint * review cleanup * fix: release * use exhausted property from env json * fix: send exhausted property in env json * fix bootstrapping * lint * fix: release * always open mgmt link if present * fix: release * fix: release * chore: fetch env json before ng serve * wait for cookie to be removed * fix: release * fix typo * fix: release * fix: debug * fix: delete cookies * don't wait for cookie to be set * fix: delete cookies * cleanup --------- Co-authored-by: Livio Spring <livio.a@gmail.com>
This commit is contained in:
@@ -94,7 +94,7 @@ describe('quotas', () => {
|
||||
});
|
||||
});
|
||||
|
||||
it('authenticated requests are limited', () => {
|
||||
it('only authenticated requests are limited', () => {
|
||||
cy.get<Array<string>>('@authenticatedUrls').then((urls) => {
|
||||
cy.get<Context>('@ctx').then((ctx) => {
|
||||
const start = new Date();
|
||||
@@ -109,9 +109,9 @@ describe('quotas', () => {
|
||||
});
|
||||
expectCookieDoesntExist();
|
||||
const expiresMax = new Date();
|
||||
expiresMax.setMinutes(expiresMax.getMinutes() + 2);
|
||||
expiresMax.setMinutes(expiresMax.getMinutes() + 20);
|
||||
cy.request({
|
||||
url: urls[0],
|
||||
url: urls[1],
|
||||
method: 'GET',
|
||||
auth: {
|
||||
bearer: ctx.api.token,
|
||||
@@ -129,7 +129,19 @@ describe('quotas', () => {
|
||||
createHumanUser(ctx.api, testUserName, false).then((res) => {
|
||||
expect(res.status).to.equal(429);
|
||||
});
|
||||
// visit limited console
|
||||
cy.visit('/users/me');
|
||||
cy.contains('#authenticated-requests-exhausted-dialog button', 'Continue').click();
|
||||
const upgradeInstancePage = `https://example.com/instances/${ctx.instanceId}`;
|
||||
cy.origin(upgradeInstancePage, { args: { upgradeInstancePage } }, ({ upgradeInstancePage }) => {
|
||||
cy.location('href').should('equal', upgradeInstancePage);
|
||||
});
|
||||
// upgrade instance
|
||||
ensureQuotaIsRemoved(ctx, Unit.AuthenticatedRequests);
|
||||
// visit upgraded console again
|
||||
cy.visit('/users/me');
|
||||
cy.get('[data-e2e="top-view-title"]');
|
||||
expectCookieDoesntExist();
|
||||
createHumanUser(ctx.api, testUserName);
|
||||
expectCookieDoesntExist();
|
||||
});
|
||||
|
Reference in New Issue
Block a user