graphql-engine/server/tests-py/queries/v1/computed_fields/create_permissions.yaml
Auke Booij b03ed983f1 Remove spaces before colons in error messages and descriptions
This PR is the result of running the following commands:
```bash
$ git grep -l '".* : "' -- '*.hs' | xargs sed -i -E 's/(".*) : "/\1: "/'
$ scripts/dev.sh test --integration --accept
```

Also manually fixed a few tests and docs

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6148
GitOrigin-RevId: cf8b87605d41d9ce86613a41ac5fd18691f5a641
2022-10-01 14:48:58 +00:00

172 lines
4.3 KiB
YAML

- description: Add a computed field get_articles to author table
url: /v1/query
status: 200
query:
type: add_computed_field
args:
table: author
name: get_articles
definition:
function: fetch_articles
table_argument: author_row
response:
message: success
- description: Add a computed field full_name to author table
url: /v1/query
status: 200
query:
type: add_computed_field
args:
table: author
name: full_name
definition:
function: full_name
response:
message: success
- description: Create select permission with non existed computed fields
url: /v1/query
status: 400
query:
type: create_select_permission
args:
table: author
role: user
permission:
columns: '*'
computed_fields:
- full_name
- random
filter: {}
response:
internal:
- definition:
role: user
source: default
comment:
permission:
allow_aggregations: false
computed_fields:
- full_name
- random
columns: '*'
filter: {}
table:
schema: public
name: author
reason: 'Inconsistent object: in table "author": in permission for role "user":
computed field "random" does not exist'
name: select_permission user in table author in source default
type: select_permission
path: $.args
error: 'Inconsistent object: in table "author": in permission for role "user":
computed field "random" does not exist'
code: invalid-configuration
- description: Create select permission with computed field which returns a set of
table
url: /v1/query
status: 400
query:
type: create_select_permission
args:
table: author
role: user
permission:
columns: '*'
computed_fields:
- full_name
- get_articles
filter: {}
response:
internal:
- definition:
role: user
source: default
comment:
permission:
allow_aggregations: false
computed_fields:
- full_name
- get_articles
columns: '*'
filter: {}
table:
schema: public
name: author
reason: 'Inconsistent object: in table "author": in permission for role "user":
select permissions on computed field "get_articles" are auto-derived from
the permissions on its returning table "article" and cannot be specified manually'
name: select_permission user in table author in source default
type: select_permission
path: $.args
error: 'Inconsistent object: in table "author": in permission for role "user":
select permissions on computed field "get_articles" are auto-derived from the
permissions on its returning table "article" and cannot be specified manually'
code: invalid-configuration
- description: Create select permission on article table
url: /v1/query
status: 200
query:
type: create_select_permission
args:
table: article
role: user
permission:
columns: '*'
filter: {}
response:
message: success
- description: Create select permission with computed fields on author table
url: /v1/query
status: 200
query:
type: create_select_permission
args:
table: author
role: user
permission:
columns: '*'
computed_fields:
- full_name
filter: {}
response:
message: success
- description: Try to drop a computed field defined in permission
url: /v1/query
status: 400
query:
type: drop_computed_field
args:
table: author
name: full_name
response:
code: dependency-error
error: 'cannot drop due to the following dependent objects: permission author.user.select
in source "default"'
path: $.args
- description: Drop a computed field with cascade
url: /v1/query
status: 200
query:
type: drop_computed_field
args:
table: author
name: full_name
cascade: true
response:
message: success
- description: Drop a computed field
url: /v1/query
status: 200
query:
type: drop_computed_field
args:
table: author
name: get_articles
response:
message: success