@@ -69,3 +69,157 @@ Feature: BigQuery source - Verification of BigQuery to GCS successful data trans
6969 Then Verify the pipeline status is "Succeeded"
7070 Then Verify data is transferred to target GCS bucket
7171 Then Validate the cmek key "cmekGCS" of target GCS bucket if cmek is enabled
72+
73+ @CMEK @BQ_SOURCE_TEST @GCS_SINK_TEST
74+ Scenario :Validate successful records transfer from BigQuery to GCS with macro arguments for partition start date and partition end date
75+ Given Open Datafusion Project to configure pipeline
76+ When Expand Plugin group in the LHS plugins list: "Source"
77+ When Select plugin: "BigQuery" from the plugins list as: "Source"
78+ Then Navigate to the properties page of plugin: "BigQuery"
79+ Then Enter BigQuery property reference name
80+ Then Enter BigQuery property "projectId" as macro argument "bqProjectId"
81+ Then Enter BigQuery property "datasetProjectId" as macro argument "bqDatasetProjectId"
82+ Then Enter BigQuery property "partitionFrom" as macro argument "bqStartDate"
83+ Then Enter BigQuery property "partitionTo" as macro argument "bqEndDate"
84+ Then Enter BigQuery property "serviceAccountType" as macro argument "serviceAccountType"
85+ Then Enter BigQuery property "serviceAccountFilePath" as macro argument "serviceAccount"
86+ Then Enter BigQuery property "serviceAccountJSON" as macro argument "serviceAccount"
87+ Then Enter BigQuery property "dataset" as macro argument "bqDataset"
88+ Then Enter BigQuery property "table" as macro argument "bqSourceTable"
89+ Then Validate "BigQuery" plugin properties
90+ Then Close the BigQuery properties
91+ When Expand Plugin group in the LHS plugins list: "Sink"
92+ When Select plugin: "GCS" from the plugins list as: "Sink"
93+ Then Navigate to the properties page of plugin: "GCS"
94+ Then Enter GCS property reference name
95+ Then Enter GCS property "projectId" as macro argument "gcsProjectId"
96+ Then Enter GCS property "serviceAccountType" as macro argument "serviceAccountType"
97+ Then Enter GCS property "serviceAccountFilePath" as macro argument "serviceAccount"
98+ Then Enter GCS property "serviceAccountJSON" as macro argument "serviceAccount"
99+ Then Enter GCS property "path" as macro argument "gcsSinkPath"
100+ Then Enter GCS sink property "pathSuffix" as macro argument "gcsPathSuffix"
101+ Then Enter GCS property "format" as macro argument "gcsFormat"
102+ Then Enter GCS sink cmek property "encryptionKeyName" as macro argument "cmekGCS" if cmek is enabled
103+ Then Validate "GCS" plugin properties
104+ Then Close the GCS properties
105+ Then Connect source as "BigQuery" and sink as "GCS" to establish connection
106+ Then Save the pipeline
107+ Then Preview and run the pipeline
108+ Then Enter runtime argument value "projectId" for key "bqProjectId"
109+ Then Enter runtime argument value "projectId" for key "bqDatasetProjectId"
110+ Then Enter runtime argument value "partitionFrom" for key "bqStartDate"
111+ Then Enter runtime argument value "partitionTo" for key "bqEndDate"
112+ Then Enter runtime argument value "serviceAccountType" for key "serviceAccountType"
113+ Then Enter runtime argument value "serviceAccount" for key "serviceAccount"
114+ Then Enter runtime argument value "dataset" for key "bqDataset"
115+ Then Enter runtime argument value for BigQuery source table name key "bqSourceTable"
116+ Then Enter runtime argument value "projectId" for key "gcsProjectId"
117+ Then Enter runtime argument value for GCS sink property path key "gcsSinkPath"
118+ Then Enter runtime argument value "gcsPathDateSuffix" for key "gcsPathSuffix"
119+ Then Enter runtime argument value "csvFormat" for key "gcsFormat"
120+ Then Enter runtime argument value "cmekGCS" for GCS cmek property key "cmekGCS" if GCS cmek is enabled
121+ Then Run the preview of pipeline with runtime arguments
122+ Then Wait till pipeline preview is in running state
123+ Then Open and capture pipeline preview logs
124+ Then Verify the preview run status of pipeline in the logs is "succeeded"
125+ Then Close the pipeline logs
126+ Then Click on preview data for GCS sink
127+ Then Close the preview data
128+ Then Deploy the pipeline
129+ Then Run the Pipeline in Runtime
130+ Then Enter runtime argument value "projectId" for key "bqProjectId"
131+ Then Enter runtime argument value "projectId" for key "bqDatasetProjectId"
132+ Then Enter runtime argument value "partitionFrom" for key "bqStartDate"
133+ Then Enter runtime argument value "partitionTo" for key "bqEndDate"
134+ Then Enter runtime argument value "serviceAccountType" for key "serviceAccountType"
135+ Then Enter runtime argument value "serviceAccount" for key "serviceAccount"
136+ Then Enter runtime argument value "dataset" for key "bqDataset"
137+ Then Enter runtime argument value for BigQuery source table name key "bqSourceTable"
138+ Then Enter runtime argument value "projectId" for key "gcsProjectId"
139+ Then Enter runtime argument value for GCS sink property path key "gcsSinkPath"
140+ Then Enter runtime argument value "gcsPathDateSuffix" for key "gcsPathSuffix"
141+ Then Enter runtime argument value "csvFormat" for key "gcsFormat"
142+ Then Enter runtime argument value "cmekGCS" for GCS cmek property key "cmekGCS" if GCS cmek is enabled
143+ Then Run the Pipeline in Runtime with runtime arguments
144+ Then Wait till pipeline is in running state
145+ Then Open and capture logs
146+ Then Verify the pipeline status is "Succeeded"
147+ Then Verify data is transferred to target GCS bucket
148+ Then Validate the cmek key "cmekGCS" of target GCS bucket if cmek is enabled
149+
150+ @CMEK @BQ_SOURCE_TEST @GCS_SINK_TEST
151+ Scenario :Validate successful records transfer from BigQuery to GCS with macro arguments for filter and Output Schema
152+ Given Open Datafusion Project to configure pipeline
153+ When Expand Plugin group in the LHS plugins list: "Source"
154+ When Select plugin: "BigQuery" from the plugins list as: "Source"
155+ Then Navigate to the properties page of plugin: "BigQuery"
156+ Then Enter BigQuery property reference name
157+ Then Enter BigQuery property "projectId" as macro argument "bqProjectId"
158+ Then Enter BigQuery property "datasetProjectId" as macro argument "bqDatasetProjectId"
159+ Then Enter BigQuery property "filter" as macro argument "bqFilter"
160+ Then Enter BigQuery property "serviceAccountType" as macro argument "serviceAccountType"
161+ Then Enter BigQuery property "serviceAccountFilePath" as macro argument "serviceAccount"
162+ Then Enter BigQuery property "serviceAccountJSON" as macro argument "serviceAccount"
163+ Then Enter BigQuery property "dataset" as macro argument "bqDataset"
164+ Then Enter BigQuery property "table" as macro argument "bqSourceTable"
165+ Then Select Macro action of output schema property: "Output Schema-macro-input" and set the value to "bqOutputSchema"
166+ Then Validate "BigQuery" plugin properties
167+ Then Close the BigQuery properties
168+ When Expand Plugin group in the LHS plugins list: "Sink"
169+ When Select plugin: "GCS" from the plugins list as: "Sink"
170+ Then Navigate to the properties page of plugin: "GCS"
171+ Then Enter GCS property reference name
172+ Then Enter GCS property "projectId" as macro argument "gcsProjectId"
173+ Then Enter GCS property "serviceAccountType" as macro argument "serviceAccountType"
174+ Then Enter GCS property "serviceAccountFilePath" as macro argument "serviceAccount"
175+ Then Enter GCS property "serviceAccountJSON" as macro argument "serviceAccount"
176+ Then Enter GCS property "path" as macro argument "gcsSinkPath"
177+ Then Enter GCS sink property "pathSuffix" as macro argument "gcsPathSuffix"
178+ Then Enter GCS property "format" as macro argument "gcsFormat"
179+ Then Enter GCS sink cmek property "encryptionKeyName" as macro argument "cmekGCS" if cmek is enabled
180+ Then Validate "GCS" plugin properties
181+ Then Close the GCS properties
182+ Then Connect source as "BigQuery" and sink as "GCS" to establish connection
183+ Then Save the pipeline
184+ Then Preview and run the pipeline
185+ Then Enter runtime argument value "projectId" for key "bqProjectId"
186+ Then Enter runtime argument value "projectId" for key "bqDatasetProjectId"
187+ Then Enter runtime argument value "filter" for key "bqFilter"
188+ Then Enter runtime argument value "serviceAccountType" for key "serviceAccountType"
189+ Then Enter runtime argument value "serviceAccount" for key "serviceAccount"
190+ Then Enter runtime argument value "dataset" for key "bqDataset"
191+ Then Enter runtime argument value for BigQuery source table name key "bqSourceTable"
192+ Then Enter runtime argument value "OutputSchema" for key "bqOutputSchema"
193+ Then Enter runtime argument value "projectId" for key "gcsProjectId"
194+ Then Enter runtime argument value for GCS sink property path key "gcsSinkPath"
195+ Then Enter runtime argument value "gcsPathDateSuffix" for key "gcsPathSuffix"
196+ Then Enter runtime argument value "csvFormat" for key "gcsFormat"
197+ Then Enter runtime argument value "cmekGCS" for GCS cmek property key "cmekGCS" if GCS cmek is enabled
198+ Then Run the preview of pipeline with runtime arguments
199+ Then Wait till pipeline preview is in running state
200+ Then Open and capture pipeline preview logs
201+ Then Verify the preview run status of pipeline in the logs is "succeeded"
202+ Then Close the pipeline logs
203+ Then Click on preview data for GCS sink
204+ Then Close the preview data
205+ Then Deploy the pipeline
206+ Then Run the Pipeline in Runtime
207+ Then Enter runtime argument value "projectId" for key "bqProjectId"
208+ Then Enter runtime argument value "projectId" for key "bqDatasetProjectId"
209+ Then Enter runtime argument value "filter" for key "bqFilter"
210+ Then Enter runtime argument value "serviceAccountType" for key "serviceAccountType"
211+ Then Enter runtime argument value "serviceAccount" for key "serviceAccount"
212+ Then Enter runtime argument value "dataset" for key "bqDataset"
213+ Then Enter runtime argument value for BigQuery source table name key "bqSourceTable"
214+ Then Enter runtime argument value "OutputSchema" for key "bqOutputSchema"
215+ Then Enter runtime argument value "projectId" for key "gcsProjectId"
216+ Then Enter runtime argument value for GCS sink property path key "gcsSinkPath"
217+ Then Enter runtime argument value "gcsPathDateSuffix" for key "gcsPathSuffix"
218+ Then Enter runtime argument value "csvFormat" for key "gcsFormat"
219+ Then Enter runtime argument value "cmekGCS" for GCS cmek property key "cmekGCS" if GCS cmek is enabled
220+ Then Run the Pipeline in Runtime with runtime arguments
221+ Then Wait till pipeline is in running state
222+ Then Open and capture logs
223+ Then Verify the pipeline status is "Succeeded"
224+ Then Verify data is transferred to target GCS bucket
225+ Then Validate the cmek key "cmekGCS" of target GCS bucket if cmek is enabled
0 commit comments