forked from data-integrations/database-plugins
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathCloudMySqlDesignTimeValidation.feature
More file actions
129 lines (123 loc) · 9.64 KB
/
CloudMySqlDesignTimeValidation.feature
File metadata and controls
129 lines (123 loc) · 9.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# Copyright © 2023 Cask Data, Inc.
##
## Licensed under the Apache License, Version 2.0 (the "License"); you may not
## use this file except in compliance with the License. You may obtain a copy of
## the License at
##
## http://www.apache.org/licenses/LICENSE-2.0
##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
## WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
## License for the specific language governing permissions and limitations under
# the License..
@CloudMySql
Feature: CloudMySql sink- Verify CloudsqlMysql sink plugin design time validation scenarios
Scenario: To verify CloudMySql sink plugin validation error message with invalid database
Given Open Datafusion Project to configure pipeline
When Expand Plugin group in the LHS plugins list: "Source"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Source"
When Expand Plugin group in the LHS plugins list: "Sink"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
Then Connect plugins: "CloudSQL MySQL" and "CloudSQL MySQL2" to establish connection
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter input plugin property: "referenceName" with value: "RefName"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter textarea plugin property: "importQuery" with value: "insertQuery"
Then Click on the Get Schema button
Then Verify the Output Schema matches the Expected Schema: "outputSchema"
Then Validate "CloudSQL MySQL" plugin properties
Then Close the Plugin Properties page
Then Navigate to the properties page of plugin: "CloudSQL MySQL2"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Enter input plugin property: "connectionName" with value: "ConnectionName"
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter input plugin property: "referenceName" with value: "RefName"
Then Enter input plugin property: "database" with value: "invalidDatabaseName"
Then Enter input plugin property: "tableName" with value: "mytable"
Then Click on the Validate button
Then Verify that the Plugin is displaying an error message: "errorMessageInvalidSinkDatabase" on the header
Scenario: To verify CloudMySql sink plugin validation error message with invalid tablename
Given Open Datafusion Project to configure pipeline
When Expand Plugin group in the LHS plugins list: "Source"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Source"
When Expand Plugin group in the LHS plugins list: "Sink"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
Then Connect plugins: "CloudSQL MySQL" and "CloudSQL MySQL2" to establish connection
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter input plugin property: "referenceName" with value: "RefName"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter textarea plugin property: "importQuery" with value: "insertQuery"
Then Click on the Get Schema button
Then Verify the Output Schema matches the Expected Schema: "outputSchema"
Then Validate "CloudSQL MySQL" plugin properties
Then Close the Plugin Properties page
Then Navigate to the properties page of plugin: "CloudSQL MySQL2"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter input plugin property: "referenceName" with value: "invalidRefName"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter input plugin property: "tableName" with value: "Invalidtable"
Then Click on the Validate button
Then Verify that the Plugin Property: "table" is displaying an in-line error message: "errorMessageInvalidTableName"
Scenario: To verify CloudMySql sink plugin validation error message with invalid reference Name
Given Open Datafusion Project to configure pipeline
When Expand Plugin group in the LHS plugins list: "Sink"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter input plugin property: "referenceName" with value: "invalidRef"
Then Enter key value pairs for plugin property: "connectionArguments" with values from json: "connectionArgumentsList"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter input plugin property: "tableName" with value: "mytable"
Then Click on the Validate button
Then Verify that the Plugin Property: "referenceName" is displaying an in-line error message: "errorMessageCloudMySqlInvalidReferenceName"
Scenario: To verify CloudMySql sink plugin validation error message with blank username
Given Open Datafusion Project to configure pipeline
When Expand Plugin group in the LHS plugins list: "Sink"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Replace input plugin property: "connectionName" with value: "connectionName" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter key value pairs for plugin property: "connectionArguments" with values from json: "connectionArgumentsList"
Then Enter input plugin property: "referenceName" with value: "RefName"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter input plugin property: "tableName" with value: "mytable"
Then Click on the Validate button
Then Verify that the Plugin Property: "user" is displaying an in-line error message: "errorMessageBlankUsername"
Scenario: To verify CloudMySql sink plugin validation error message with ConnectionName
Given Open Datafusion Project to configure pipeline
When Expand Plugin group in the LHS plugins list: "Sink"
When Select plugin: "CloudSQL MySQL" from the plugins list as: "Sink"
Then Navigate to the properties page of plugin: "CloudSQL MySQL"
Then Select dropdown plugin property: "select-jdbcPluginName" with option value: "cloudsql-mysql"
Then Select radio button plugin property: "instanceType" with value: "public"
Then Enter input plugin property: "connectionName" with value: "cdf-athena:us-central1"
Then Replace input plugin property: "user" with value: "username" for Credentials and Authorization related fields
Then Replace input plugin property: "password" with value: "password" for Credentials and Authorization related fields
Then Enter key value pairs for plugin property: "connectionArguments" with values from json: "connectionArgumentsList"
Then Enter input plugin property: "referenceName" with value: "RefName"
Then Enter input plugin property: "database" with value: "TestDatabase"
Then Enter input plugin property: "tableName" with value: "mytable"
Then Click on the Validate button
Then Verify that the Plugin Property: "connectionName" is displaying an in-line error message: "errorMessageConnectionName"