Skip to content

Commit e50c89d

Browse files
author
Oliver Meyer
committed
Configure acceptance tests
1 parent 3a32f0b commit e50c89d

File tree

4 files changed

+192
-42
lines changed

4 files changed

+192
-42
lines changed

airbyte-integrations/connectors/source-dixa/acceptance-test-config.yml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ tests:
88
- config_path: "secrets/config.json"
99
status: "succeed"
1010
- config_path: "integration_tests/invalid_config.json"
11-
status: "exception"
11+
status: "failed"
1212
discovery:
1313
- config_path: "secrets/config.json"
1414
basic_read:
@@ -21,10 +21,14 @@ tests:
2121
# extra_fields: no
2222
# exact_order: no
2323
# extra_records: yes
24-
incremental: # TODO if your connector does not implement incremental sync, remove this block
25-
- config_path: "secrets/config.json"
26-
configured_catalog_path: "integration_tests/configured_catalog.json"
27-
future_state_path: "integration_tests/abnormal_state.json"
28-
full_refresh:
24+
incremental:
2925
- config_path: "secrets/config.json"
3026
configured_catalog_path: "integration_tests/configured_catalog.json"
27+
# future_state_path: "integration_tests/abnormal_state.json"
28+
# We skip the full_refresh test because of unusual behaviour in the Dixa API.
29+
# We observed cases where a record was updated without the updated_at value changing.
30+
# See the thread below for further information:
31+
# https://airbytehq.slack.com/archives/C01VDDEGL7M/p1625319909273300
32+
# full_refresh:
33+
# - config_path: "secrets/config.json"
34+
# configured_catalog_path: "integration_tests/configured_catalog.json"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"todo-stream-name": {
3-
"todo-field-name": "todo-abnormal-value"
2+
"conversation_export": {
3+
"updated_at": 9999999999999
44
}
55
}
Lines changed: 178 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,201 @@
1-
// TODO: Construct a configured catalog that can be used for testing. Each stream's `json_schema` field should match the corresponding json schema file.
21
{
32
"streams": [
43
{
4+
"sync_mode": "incremental",
5+
"destination_sync_mode": "append",
6+
"cursor_field": ["updated_at"],
57
"stream": {
6-
"name": "customers",
8+
"name": "conversation_export",
9+
"supported_sync_modes": ["full_refresh", "incremental"],
10+
"source_defined_cursor": true,
11+
"default_cursor_field": ["updated_at"],
12+
"source_defined_primary_key": [["id"]],
713
"json_schema": {
8-
"$schema": "http://json-schema.org/draft-07/schema#",
914
"type": "object",
15+
"required": [
16+
"id", "created_at", "initial_channel", "requester_id"
17+
],
18+
"$schema": "http://json-schema.org/draft-07/schema#",
1019
"properties": {
1120
"id": {
21+
"type": "integer"
22+
},
23+
"created_at": {
24+
"type": "integer"
25+
},
26+
"initial_channel": {
27+
"type": "string"
28+
},
29+
"requester_id": {
30+
"type": "string"
31+
},
32+
"requester_name": {
1233
"type": ["null", "string"]
1334
},
14-
"name": {
35+
"requester_email": {
1536
"type": ["null", "string"]
1637
},
17-
"signup_date": {
18-
"type": ["null", "string"],
19-
"format": "date-time"
20-
}
21-
}
22-
},
23-
"supported_sync_modes": ["full_refresh"]
24-
},
25-
"sync_mode": "full_refresh",
26-
"destination_sync_mode": "overwrite"
27-
},
28-
{
29-
"stream": {
30-
"name": "employees",
31-
"json_schema": {
32-
"$schema": "http://json-schema.org/draft-07/schema#",
33-
"type": "object",
34-
"properties": {
35-
"id": {
38+
"requester_phone_number": {
3639
"type": ["null", "string"]
3740
},
38-
"name": {
41+
"queued_at": {
42+
"type": ["null", "integer"]
43+
},
44+
"queue_id": {
3945
"type": ["null", "string"]
4046
},
41-
"years_of_service": {
47+
"queue_name": {
48+
"type": ["null", "string"]
49+
},
50+
"closed_at": {
4251
"type": ["null", "integer"]
4352
},
44-
"start_date": {
45-
"type": ["null", "string"],
46-
"format": "date-time"
53+
"rating_score": {
54+
"type": ["null", "integer"]
55+
},
56+
"rating_message": {
57+
"type": ["null", "string"]
58+
},
59+
"ratings": {
60+
"type": "object",
61+
"properties": {
62+
"rating_score": {
63+
"type": ["null", "integer"]
64+
},
65+
"rating_message": {
66+
"type": ["null", "string"]
67+
},
68+
"rating_type": {
69+
"type": ["null", "string"]
70+
},
71+
"rating_created_timestamp": {
72+
"type": ["null", "integer"]
73+
},
74+
"rating_offered_timestamp": {
75+
"type": ["null", "integer"]
76+
},
77+
"rating_status": {
78+
"type": ["null", "string"]
79+
},
80+
"rating_language": {
81+
"type": ["null", "string"]
82+
},
83+
"rating_modified_timestamp": {
84+
"type": ["null", "integer"]
85+
},
86+
"rating_rated_timestamp": {
87+
"type": ["null", "integer"]
88+
},
89+
"rating_scheduled_timestamp": {
90+
"type": ["null", "integer"]
91+
},
92+
"rating_scheduled_for_timestamp": {
93+
"type": ["null", "integer"]
94+
},
95+
"rating_unscheduled_timestamp": {
96+
"type": ["null", "integer"]
97+
},
98+
"rating_cancelled_timestamp": {
99+
"type": ["null", "integer"]
100+
}
101+
}
102+
},
103+
"direction": {
104+
"type": ["null", "string"]
105+
},
106+
"assigned_at": {
107+
"type": ["null", "integer"]
108+
},
109+
"assignee_id": {
110+
"type": ["null", "string"]
111+
},
112+
"assignee_name": {
113+
"type": ["null", "string"]
114+
},
115+
"assignee_email": {
116+
"type": ["null", "string"]
117+
},
118+
"assignee_phone_number": {
119+
"type": ["null", "string"]
120+
},
121+
"to_provisioned_phone_number_id": {
122+
"type": ["null", "string"]
123+
},
124+
"to_provisioned_phone_number_name": {
125+
"type": ["null", "string"]
126+
},
127+
"total_duration": {
128+
"type": ["null", "integer"]
129+
},
130+
"handling_duration": {
131+
"type": ["null", "integer"]
132+
},
133+
"dixa_email_integration_id": {
134+
"type": ["null", "string"]
135+
},
136+
"dixa_email_integration_sender_name": {
137+
"type": ["null", "string"]
138+
},
139+
"forwarding_email": {
140+
"type": ["null", "string"]
141+
},
142+
"facebook_page_id": {
143+
"type": ["null", "string"]
144+
},
145+
"facebook_page_name": {
146+
"type": ["null", "string"]
147+
},
148+
"widget_id": {
149+
"type": ["null", "string"]
150+
},
151+
"widget_name": {
152+
"type": ["null", "string"]
153+
},
154+
"tags": {
155+
"type": ["null", "array"],
156+
"items": {
157+
"type": "string"
158+
}
159+
},
160+
"conversation_wrapup_notes": {
161+
"type": ["null", "array"],
162+
"items": {
163+
"type": "string"
164+
}
165+
},
166+
"transferee_name": {
167+
"type": ["null", "string"]
168+
},
169+
"transfer_time": {
170+
"type": ["null", "integer"]
171+
},
172+
"originating_country": {
173+
"type": ["null", "string"]
174+
},
175+
"status": {
176+
"type": ["null", "string"]
177+
},
178+
"updated_at": {
179+
"type": ["null", "integer"]
180+
},
181+
"last_message_created_at": {
182+
"type": ["null", "integer"]
183+
},
184+
"from_provisioned_phone_number_id": {
185+
"type": ["null", "string"]
186+
},
187+
"from_provisioned_phone_number_name": {
188+
"type": ["null", "string"]
189+
},
190+
"subject": {
191+
"type": ["null", "string"]
192+
},
193+
"anonymized_at": {
194+
"type": ["null", "integer"]
47195
}
48196
}
49-
},
50-
"supported_sync_modes": ["full_refresh", "incremental"]
51-
},
52-
"sync_mode": "incremental",
53-
"destination_sync_mode": "append"
197+
}
198+
}
54199
}
55200
]
56201
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
{
2-
"todo-wrong-field": "this should be an incomplete config file, used in standard tests"
2+
"start_timestamp": 1625263200000,
3+
"batch_size": 1
34
}

0 commit comments

Comments
 (0)