|
2 | 2 | - name: meetings |
3 | 3 | schema: "{{ env_var('TARGET_SCHEMA') }}" |
4 | 4 | description: "Every meeting published on the platform" |
| 5 | + # model-level constraints |
| 6 | + constraints: |
| 7 | + - type: primary_key |
| 8 | + columns: [id] |
| 9 | + - type: foreign_key |
| 10 | + columns: [decidim_component_id] |
| 11 | + expression: "{{ target.schema }}.components (id)" |
| 12 | + - type: foreign_key |
| 13 | + columns: [decidim_scope_id] |
| 14 | + expression: "{{ target.schema }}.decidim_scopes (id)" |
| 15 | + - type: foreign_key |
| 16 | + columns: [decidim_author_id] |
| 17 | + expression: "{{ target.schema }}.decidim_users (id)" |
5 | 18 | columns: |
6 | 19 | - name: id |
7 | 20 | description: "The unique identifier for a meeting" |
| 21 | + data_tests: |
| 22 | + - not_null |
| 23 | + - unique |
| 24 | + constraints: |
| 25 | + - type: not_null |
| 26 | + - type: unique |
| 27 | + - type: primary_key |
| 28 | + - name: title |
| 29 | + description: "The title of the meeting" |
| 30 | + data_tests: |
| 31 | + - not_null |
| 32 | + constraints: |
| 33 | + - type: not_null |
| 34 | + - name: description |
| 35 | + description: "A brief description of the meeting" |
| 36 | + - name: address |
| 37 | + description: "The physical or virtual address of the meeting" |
| 38 | + - name: attendees_count |
| 39 | + description: "The total number of attendees at the meeting" |
| 40 | + - name: created_at |
| 41 | + description: "The timestamp when the meeting was created" |
| 42 | + data_tests: |
| 43 | + - not_null |
| 44 | + constraints: |
| 45 | + - type: not_null |
| 46 | + - name: decidim_scope_id |
| 47 | + description: "The identifier of the scope this meeting belongs to" |
| 48 | + constraints: |
| 49 | + - type: not_null |
| 50 | + - type: foreign_key |
| 51 | + expression: "{{ target.schema }}.decidim_scopes (id)" |
| 52 | + - name: decidim_component_id |
| 53 | + description: "The identifier of the component associated with the meeting" |
| 54 | + constraints: |
| 55 | + - type: not_null |
| 56 | + - type: foreign_key |
| 57 | + expression: "{{ target.schema }}.components (id)" |
| 58 | + - name: start_time |
| 59 | + description: "The start time of the meeting" |
| 60 | + - name: end_time |
| 61 | + description: "The end time of the meeting" |
| 62 | + - name: registration_url |
| 63 | + description: "URL for registration for the meeting" |
| 64 | + - name: type_of_meeting |
| 65 | + description: "The type/category of the meeting" |
| 66 | + - name: translated_type_of_meeting |
| 67 | + description: "The translated type of the meeting" |
| 68 | + - name: private_meeting |
| 69 | + description: "Indicates if the meeting is private" |
| 70 | + - name: decidim_author_id |
| 71 | + description: "The ID of the author or organizer of the meeting" |
| 72 | + constraints: |
| 73 | + - type: not_null |
| 74 | + - type: foreign_key |
| 75 | + expression: "{{ target.schema }}.decidim_users (id)" |
| 76 | + - name: resource_type |
| 77 | + description: "The type of resource related to the meeting" |
| 78 | + - name: meeting_url |
| 79 | + description: "The URL to access the meeting" |
| 80 | + - name: categories |
| 81 | + description: "Categories associated with the meeting" |
| 82 | + - name: sub_categories |
| 83 | + description: "Subcategories associated with the meeting" |
| 84 | + - name: categorizations |
| 85 | + description: "The full categorization data (raw) for the meeting" |
8 | 86 | unit_tests: |
9 | 87 | - name: test_url_concatenation |
10 | 88 | description: "Check URL concatenation logic" |
|
0 commit comments