Skip to content

Commit b6c555b

Browse files
priyabhatnagar25Ishakaushik-cloud
authored andcommitted
bq validation
1 parent 86d084d commit b6c555b

22 files changed

+854
-504
lines changed

cloudsql-mysql-plugin/src/e2e-test/features/sink/CloudMySqlDesignTime.feature

+17-1
Original file line numberDiff line numberDiff line change
@@ -46,5 +46,21 @@ Feature: CloudMySql sink- Verify CloudMySql sink plugin design time scenarios
4646
Then Validate "CloudSQL MySQL" plugin properties
4747
Then Close the Plugin Properties page
4848

49-
49+
Scenario: To verify CloudMySql source plugin validation setting up connection arguments
50+
Given Open Datafusion Project to configure pipeline
51+
When Expand Plugin group in the LHS plugins list: "Sink"
52+
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
53+
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
54+
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
55+
Then Select radio button plugin property: "instanceType" with value: "public"
56+
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
57+
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
58+
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
59+
Then Enter key value pairs for plugin property: "connectionArguments" with values from json: "connectionArgumentsList"
60+
Then Enter input plugin property: "referenceName" with value: "referencename"
61+
Then Enter input plugin property: "database" with value: "DatabaseName"
62+
Then Enter textarea plugin property: "importQuery" with value: "insertQuery"
63+
Then Click on the Get Schema button
64+
Then Validate "CloudSQL MySQL" plugin properties
65+
Then Close the Plugin Properties page
5066

cloudsql-mysql-plugin/src/e2e-test/features/sink/CloudMySqlDesignTimeValidation.feature

+29-14
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,19 @@
1-
Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scenarios
1+
# Copyright © 2023 Cask Data, Inc.
2+
##
3+
## Licensed under the Apache License, Version 2.0 (the "License"); you may not
4+
## use this file except in compliance with the License. You may obtain a copy of
5+
## the License at
6+
##
7+
## http://www.apache.org/licenses/LICENSE-2.0
8+
##
9+
## Unless required by applicable law or agreed to in writing, software
10+
## distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11+
## WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12+
## License for the specific language governing permissions and limitations under
13+
# the License..
14+
15+
@CloudMySql
16+
Feature: CloudMySql sink- Verify CloudsqlMysql sink plugin design time validation scenarios
217

318
Scenario: To verify CloudMySql sink plugin validation error message with invalid database
419
Given Open Datafusion Project to configure pipeline
@@ -10,15 +25,15 @@ Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scena
1025
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
1126
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
1227
Then Select radio button plugin property: "instanceType" with value: "public"
13-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
28+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
1429
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
1530
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
1631
Then Enter input plugin property: "referenceName" with value: "RefName"
1732
Then Enter input plugin property: "database" with value: "TestDatabase"
1833
Then Enter textarea plugin property: "importQuery" with value: "insertQuery"
19-
# Then Click on the Get Schema button
20-
# Then Verify the Output Schema matches the Expected Schema: "outputSchema"
21-
# Then Validate "CloudSQL MySQL" plugin properties
34+
Then Click on the Get Schema button
35+
Then Verify the Output Schema matches the Expected Schema: "outputSchema"
36+
Then Validate "CloudSQL MySQL" plugin properties
2237
Then Close the Plugin Properties page
2338
Then Navigate to the properties page of plugin: "CloudSQL MySQL2"
2439
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
@@ -30,7 +45,7 @@ Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scena
3045
Then Enter input plugin property: "database" with value: "invalidDatabaseName"
3146
Then Enter input plugin property: "tableName" with value: "mytable"
3247
Then Click on the Validate button
33-
# Then Verify that the Plugin is displaying an error message: "errorMessageInvalidSinkDatabase" on the header
48+
Then Verify that the Plugin is displaying an error message: "errorMessageInvalidSinkDatabase" on the header
3449

3550
Scenario: To verify CloudMySql sink plugin validation error message with invalid tablename
3651
Given Open Datafusion Project to configure pipeline
@@ -42,26 +57,26 @@ Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scena
4257
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
4358
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
4459
Then Select radio button plugin property: "instanceType" with value: "public"
45-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
60+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
4661
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
4762
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
4863
Then Enter input plugin property: "referenceName" with value: "RefName"
4964
Then Enter input plugin property: "database" with value: "TestDatabase"
5065
Then Enter textarea plugin property: "importQuery" with value: "insertQuery"
51-
# Then Click on the Get Schema button
52-
# Then Verify the Output Schema matches the Expected Schema: "outputSchema"
53-
# Then Validate "CloudSQL MySQL" plugin properties
66+
Then Click on the Get Schema button
67+
Then Verify the Output Schema matches the Expected Schema: "outputSchema"
68+
Then Validate "CloudSQL MySQL" plugin properties
5469
Then Close the Plugin Properties page
5570
Then Navigate to the properties page of plugin: "CloudSQL MySQL2"
5671
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
5772
Then Select radio button plugin property: "instanceType" with value: "public"
58-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
73+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
5974
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
6075
Then Enter input plugin property: "referenceName" with value: "invalidRefName"
6176
Then Enter input plugin property: "database" with value: "TestDatabase"
6277
Then Enter input plugin property: "tableName" with value: "Invalidtable"
6378
Then Click on the Validate button
64-
# Then Verify that the Plugin Property: "table" is displaying an in-line error message: "errorMessageInvalidTableName"
79+
Then Verify that the Plugin Property: "table" is displaying an in-line error message: "errorMessageInvalidTableName"
6580

6681
Scenario: To verify CloudMySql sink plugin validation error message with invalid reference Name
6782
Given Open Datafusion Project to configure pipeline
@@ -70,7 +85,7 @@ Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scena
7085
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
7186
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
7287
Then Select radio button plugin property: "instanceType" with value: "public"
73-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
88+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
7489
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
7590
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
7691
Then Enter input plugin property: "referenceName" with value: "invalidRef"
@@ -87,7 +102,7 @@ Feature: CloudMySql sink- Verify ,Mysql sink plugin design time validation scena
87102
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
88103
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
89104
Then Select radio button plugin property: "instanceType" with value: "public"
90-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
105+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
91106
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
92107
Then Enter key value pairs for plugin property: "connectionArguments" with values from json: "connectionArgumentsList"
93108
Then Enter input plugin property: "referenceName" with value: "RefName"
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
# Copyright © 2023 Cask Data, Inc.
2+
##
3+
## Licensed under the Apache License, Version 2.0 (the "License"); you may not
4+
## use this file except in compliance with the License. You may obtain a copy of
5+
## the License at
6+
##
7+
## http://www.apache.org/licenses/LICENSE-2.0
8+
##
9+
## Unless required by applicable law or agreed to in writing, software
10+
## distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11+
## WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12+
## License for the specific language governing permissions and limitations under
13+
# the License..
14+
15+
@CloudMySql
116
Feature: CloudMySql sink- Verify CloudMySql sink plugin design time macro scenarios
217

318
Scenario: To verify CloudMySql sink plugin validation with macro enabled fields for connection section
@@ -6,15 +21,15 @@ Feature: CloudMySql sink- Verify CloudMySql sink plugin design time macro scenar
621
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
722
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
823
Then Click on the Macro button of Property: "jdbcPluginName" and set the value to: "cloudsql-mysql"
9-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
24+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
1025
Then Select radio button plugin property: "instanceType" with value: "public"
1126
Then Click on the Macro button of Property: "user" and set the value to: "username"
1227
Then Click on the Macro button of Property: "password" and set the value to: "password"
1328
Then Click on the Macro button of Property: "connectionArguments" and set the value to: "connectionArgumentsList"
1429
Then Enter input plugin property: "referenceName" with value: "sourceRef"
1530
Then Replace input plugin property: "database" with value: "TestDatabase"
1631
Then Click on the Validate button
17-
# Then Validate "CloudSQL MySQL" plugin properties
32+
Then Validate "CloudSQL MySQL" plugin properties
1833
Then Close the Plugin Properties page
1934

2035
Scenario: To verify cloudsql sink plugin validation with macro enabled fields for basic section
@@ -23,13 +38,13 @@ Feature: CloudMySql sink- Verify CloudMySql sink plugin design time macro scenar
2338
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
2439
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
2540
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
26-
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
41+
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
2742
Then Select radio button plugin property: "instanceType" with value: "public"
2843
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
2944
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
3045
Then Enter input plugin property: "referenceName" with value: "sourceRef"
3146
Then Replace input plugin property: "database" with value: "TestDatabase"
3247
Then Click on the Macro button of Property: "tableName" and set the value to: "mytable"
3348
Then Click on the Validate button
34-
# Then Validate "CloudSQL MySQL" plugin properties
49+
Then Validate "CloudSQL MySQL" plugin properties
3550
Then Close the Plugin Properties page

0 commit comments

Comments
 (0)