You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@devlake.apache.org by ab...@apache.org on 2022/06/22 04:11:08 UTC
[incubator-devlake] branch main updated: refactor(tapd): add e2e for bug/story status
This is an automated email from the ASF dual-hosted git repository.
abeizn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
The following commit(s) were added to refs/heads/main by this push:
new ce0497fe refactor(tapd): add e2e for bug/story status
ce0497fe is described below
commit ce0497fef268d1d15bc89d14f6d5bf56acc6fb91
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Wed Jun 22 11:59:04 2022 +0800
refactor(tapd): add e2e for bug/story status
---
.../e2e/raw_tables/_raw_tapd_api_bug_status.csv | 11 +++
.../e2e/raw_tables/_raw_tapd_api_story_status.csv | 11 +++
.../snapshot_tables/_tool_tapd_bug_statuses.csv | 1 +
.../snapshot_tables/_tool_tapd_story_statuses.csv | 22 ++++++
plugins/tapd/e2e/story_and_bug_status_test.go | 89 ++++++++++++++++++++++
5 files changed, 134 insertions(+)
diff --git a/plugins/tapd/e2e/raw_tables/_raw_tapd_api_bug_status.csv b/plugins/tapd/e2e/raw_tables/_raw_tapd_api_bug_status.csv
new file mode 100644
index 00000000..858c9d90
--- /dev/null
+++ b/plugins/tapd/e2e/raw_tables/_raw_tapd_api_bug_status.csv
@@ -0,0 +1,11 @@
+id,params,data,url,input,created_at
+11,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+12,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+13,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+14,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+15,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+16,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+17,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+18,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+19,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+20,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
diff --git a/plugins/tapd/e2e/raw_tables/_raw_tapd_api_story_status.csv b/plugins/tapd/e2e/raw_tables/_raw_tapd_api_story_status.csv
new file mode 100644
index 00000000..53aa288c
--- /dev/null
+++ b/plugins/tapd/e2e/raw_tables/_raw_tapd_api_story_status.csv
@@ -0,0 +1,11 @@
+id,params,data,url,input,created_at
+11,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+12,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+13,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+14,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+15,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+16,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+17,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+18,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+19,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
+20,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}","{""status"":1,""data"":{""planning"":""test111test111test111"",""developing"":""test111test111test111"",""resolved"":""test111test111test111"",""rejected"":""test111test111test111"",""status_2"":""test111test111"",""status_3"":""test111test111test111"",""status_4"":""test111test111"",""status_5"":""test111test111test111"",""status_6"":""test111test111test111test111test111"",""status_7"":""test111test111test111"",""status_8"" [...]
diff --git a/plugins/tapd/e2e/snapshot_tables/_tool_tapd_bug_statuses.csv b/plugins/tapd/e2e/snapshot_tables/_tool_tapd_bug_statuses.csv
new file mode 100644
index 00000000..d8963a2e
--- /dev/null
+++ b/plugins/tapd/e2e/snapshot_tables/_tool_tapd_bug_statuses.csv
@@ -0,0 +1 @@
+connection_id,workspace_id,english_name,chinese_name,is_last_step,created_at,updated_at,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
diff --git a/plugins/tapd/e2e/snapshot_tables/_tool_tapd_story_statuses.csv b/plugins/tapd/e2e/snapshot_tables/_tool_tapd_story_statuses.csv
new file mode 100644
index 00000000..bc13625d
--- /dev/null
+++ b/plugins/tapd/e2e/snapshot_tables/_tool_tapd_story_statuses.csv
@@ -0,0 +1,22 @@
+connection_id,workspace_id,english_name,chinese_name,is_last_step,created_at,updated_at,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
+1,991,developing,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,planning,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,rejected,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,resolved,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_10,test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_11,test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_12,test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_13,test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_14,test111test111test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_15,test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_16,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_17,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_18,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_2,test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_3,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_4,test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_5,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_6,test111test111test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_7,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_8,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
+1,991,status_9,test111test111test111,0,2022-06-22T03:57:39.864+00:00,2022-06-22T03:57:39.864+00:00,"{""ConnectionId"":1,""CompanyId"":99,""WorkspaceId"":991}",_raw_tapd_api_story_status,20,
diff --git a/plugins/tapd/e2e/story_and_bug_status_test.go b/plugins/tapd/e2e/story_and_bug_status_test.go
new file mode 100644
index 00000000..efddcaff
--- /dev/null
+++ b/plugins/tapd/e2e/story_and_bug_status_test.go
@@ -0,0 +1,89 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+*/
+
+package e2e
+
+import (
+ "fmt"
+ "testing"
+
+ "github.com/apache/incubator-devlake/helpers/e2ehelper"
+ "github.com/apache/incubator-devlake/plugins/tapd/impl"
+ "github.com/apache/incubator-devlake/plugins/tapd/models"
+ "github.com/apache/incubator-devlake/plugins/tapd/tasks"
+)
+
+func TestTapdStoryAndBugStatusDataFlow(t *testing.T) {
+
+ var tapd impl.Tapd
+ dataflowTester := e2ehelper.NewDataFlowTester(t, "tapd", tapd)
+
+ taskData := &tasks.TapdTaskData{
+ Options: &tasks.TapdOptions{
+ ConnectionId: 1,
+ CompanyId: 99,
+ WorkspaceId: 991,
+ },
+ }
+ // story status
+ // import raw data table
+ dataflowTester.ImportCsvIntoRawTable("./raw_tables/_raw_tapd_api_story_status.csv",
+ "_raw_tapd_api_story_status")
+
+ // verify extraction
+ dataflowTester.FlushTabler(&models.TapdStoryStatus{})
+ dataflowTester.Subtask(tasks.ExtractStoryStatusMeta, taskData)
+ dataflowTester.VerifyTable(
+ models.TapdStoryStatus{},
+ fmt.Sprintf("./snapshot_tables/%s.csv", models.TapdStoryStatus{}.TableName()),
+ []string{"connection_id", "workspace_id", "english_name"},
+ []string{
+ "chinese_name",
+ "is_last_step",
+ "created_at",
+ "updated_at",
+ "_raw_data_params",
+ "_raw_data_table",
+ "_raw_data_id",
+ "_raw_data_remark",
+ },
+ )
+
+ // bug status
+ // import raw data table
+ dataflowTester.ImportCsvIntoRawTable("./raw_tables/_raw_tapd_api_bug_status.csv",
+ "_raw_tapd_api_bug_status")
+
+ // verify extraction
+ dataflowTester.FlushTabler(&models.TapdBugStatus{})
+ dataflowTester.Subtask(tasks.ExtractStoryStatusMeta, taskData)
+ dataflowTester.VerifyTable(
+ models.TapdBugStatus{},
+ fmt.Sprintf("./snapshot_tables/%s.csv", models.TapdBugStatus{}.TableName()),
+ []string{"connection_id", "workspace_id", "english_name"},
+ []string{
+ "chinese_name",
+ "is_last_step",
+ "created_at",
+ "updated_at",
+ "_raw_data_params",
+ "_raw_data_table",
+ "_raw_data_id",
+ "_raw_data_remark",
+ },
+ )
+}