mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 03:37:34 +00:00
test(e2e): test authorizations (#4342)
* add specs that cover the b2b demo * update cypress * test handling manager roles * use shared mocha contexts * use beforeEach instead of before * improve readability * improve application test * remove static waits * remove old awaitDesired * test owned project authorizations * simplify ensure.ts * test granted projects authz * disable prevSubject for shouldNotExist * await non-existence, then expect no error * update dependencies * fix tests from scratch * fix settings tests from scratch * Apply suggestions from code review Co-authored-by: Max Peintner <max@caos.ch> * Implement code review suggestions * use spread operator * settings properties must match * add check settings object * revert spread operator Co-authored-by: Max Peintner <max@caos.ch>
This commit is contained in:
32
e2e/cypress/support/api/search.ts
Normal file
32
e2e/cypress/support/api/search.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { requestHeaders } from './apiauth';
|
||||
import { API, Entity, SearchResult } from './types';
|
||||
|
||||
export function searchSomething(
|
||||
api: API,
|
||||
searchPath: string,
|
||||
method: string,
|
||||
mapResult: (body: any) => SearchResult,
|
||||
orgId?: number,
|
||||
): Cypress.Chainable<SearchResult> {
|
||||
return cy
|
||||
.request({
|
||||
method: method,
|
||||
url: searchPath,
|
||||
headers: requestHeaders(api, orgId),
|
||||
failOnStatusCode: method == 'POST',
|
||||
})
|
||||
.then((res) => {
|
||||
return mapResult(res.body);
|
||||
});
|
||||
}
|
||||
|
||||
export function findFromList(find: (entity: Entity) => boolean, idField: string = 'id'): (body: any) => SearchResult {
|
||||
return (b) => {
|
||||
const entity = b.result?.find(find);
|
||||
return {
|
||||
entity: entity,
|
||||
sequence: parseInt(<string>b.details.processedSequence),
|
||||
id: entity?.[idField],
|
||||
};
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user