forked from TrueCloudLab/s3-tests-parser
[#6] Fix test struct tag naming
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
This commit is contained in:
parent
e30bbe87e9
commit
b08b08d6a0
4 changed files with 72 additions and 49 deletions
|
@ -161,6 +161,8 @@ func formTestResult(group s3.Group, testsMap map[string]bool) TestResult {
|
|||
color = templates.BlueColor
|
||||
} else if strings.Contains(group.Comment, "Not applicable") {
|
||||
color = templates.BlackColor
|
||||
} else if ln == 0 && !group.Skip {
|
||||
color = templates.GreenColor
|
||||
}
|
||||
|
||||
if color == "" {
|
||||
|
|
3
go.mod
3
go.mod
|
@ -5,15 +5,18 @@ go 1.20
|
|||
require (
|
||||
github.com/spf13/cobra v1.7.0
|
||||
github.com/spf13/viper v1.16.0
|
||||
github.com/stretchr/testify v1.8.3
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/fsnotify/fsnotify v1.6.0 // indirect
|
||||
github.com/hashicorp/hcl v1.0.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/magiconair/properties v1.8.7 // indirect
|
||||
github.com/mitchellh/mapstructure v1.5.0 // indirect
|
||||
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/spf13/afero v1.9.5 // indirect
|
||||
github.com/spf13/cast v1.5.1 // indirect
|
||||
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
||||
|
|
|
@ -129,7 +129,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketCors",
|
||||
|
@ -149,21 +149,21 @@
|
|||
"test_delete_bucket_encryption_kms"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketIntelligentTieringConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketInventoryConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketLifecycle",
|
||||
|
@ -180,14 +180,14 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketOwnershipControls",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketPolicy",
|
||||
|
@ -204,7 +204,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteBucketTagging",
|
||||
|
@ -221,7 +221,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "DeleteObject",
|
||||
|
@ -269,7 +269,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketAccelerateConfiguration",
|
||||
|
@ -293,7 +293,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketCors",
|
||||
|
@ -313,21 +313,21 @@
|
|||
"test_get_bucket_encryption_kms"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketIntelligentTieringConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketInventoryConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketLifecycle",
|
||||
|
@ -363,35 +363,35 @@
|
|||
"test_logging_toggle"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketMetricsConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketNotification",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketNotificationConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketOwnershipControls",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketPolicy",
|
||||
|
@ -408,14 +408,14 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": false,
|
||||
"comment": "Party supported"
|
||||
"comment": "Party supported, but there are not compatibility tests"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketReplication",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetBucketRequestPayment",
|
||||
|
@ -449,7 +449,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "GetObject",
|
||||
|
@ -494,7 +494,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": false,
|
||||
"comment": ""
|
||||
"comment": "Supported, but there are not compatibility tests"
|
||||
},
|
||||
{
|
||||
"name": "GetObjectLegalHold",
|
||||
|
@ -552,7 +552,7 @@
|
|||
"test_get_default_public_block"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "HeadBucket",
|
||||
|
@ -581,28 +581,28 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "ListBucketIntelligentTieringConfigurations",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "ListBucketInventoryConfigurations",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "ListBucketMetricsConfigurations",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "ListBuckets",
|
||||
|
@ -739,7 +739,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": false,
|
||||
"comment": ""
|
||||
"comment": "Supported, but there are not compatibility tests"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketAccelerateConfiguration",
|
||||
|
@ -763,7 +763,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketCors",
|
||||
|
@ -795,21 +795,21 @@
|
|||
"test_sse_kms_default_upload_8mb"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketIntelligentTieringConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketInventoryConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketLifecycle",
|
||||
|
@ -836,35 +836,35 @@
|
|||
"test_logging_toggle"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketMetricsConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketNotification",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketNotificationConfiguration",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketOwnershipControls",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketPolicy",
|
||||
|
@ -881,7 +881,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutBucketRequestPayment",
|
||||
|
@ -915,7 +915,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "PutObject",
|
||||
|
@ -1005,14 +1005,14 @@
|
|||
"test_ignore_public_acls"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "RestoreObject",
|
||||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "SelectObjectContent",
|
||||
|
@ -1054,7 +1054,7 @@
|
|||
"test_output_serial_expressions"
|
||||
],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "UploadPart",
|
||||
|
@ -1100,7 +1100,7 @@
|
|||
"tag": "API",
|
||||
"tests": [],
|
||||
"skip": true,
|
||||
"comment": "Not supported yet, but will be in future"
|
||||
"comment": "Not supported"
|
||||
},
|
||||
{
|
||||
"name": "BucketPolicy",
|
||||
|
@ -1195,7 +1195,7 @@
|
|||
},
|
||||
{
|
||||
"name": "BucketACL",
|
||||
"tags": "Features",
|
||||
"tag": "Features",
|
||||
"tests": [
|
||||
"test_bucket_put_bad_canned_acl",
|
||||
"test_bucket_list_objects_anonymous",
|
||||
|
@ -1210,7 +1210,7 @@
|
|||
},
|
||||
{
|
||||
"name": "BucketVersioning",
|
||||
"tags": "Features",
|
||||
"tag": "Features",
|
||||
"tests": [
|
||||
"test_object_lock_put_obj_lock",
|
||||
"test_multipart_copy_versioned",
|
||||
|
@ -1240,7 +1240,7 @@
|
|||
},
|
||||
{
|
||||
"name": "MultipartUpload",
|
||||
"tags": "Features",
|
||||
"tag": "Features",
|
||||
"tests": [
|
||||
"test_multipart_upload"
|
||||
],
|
||||
|
@ -1249,13 +1249,14 @@
|
|||
"CompleteMultipartUpload",
|
||||
"ListMultipartUploads",
|
||||
"UploadPart",
|
||||
"UploadPartCopy"
|
||||
"UploadPartCopy",
|
||||
"ListParts"
|
||||
],
|
||||
"skip": false,
|
||||
"comment": ""
|
||||
},
|
||||
{
|
||||
"name": "encryption",
|
||||
"name": "Encryption",
|
||||
"tag": "Features",
|
||||
"tests": [
|
||||
"test_encrypted_transfer_1b",
|
||||
|
|
17
internal/s3/structure_test.go
Normal file
17
internal/s3/structure_test.go
Normal file
|
@ -0,0 +1,17 @@
|
|||
package s3
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestStructParsing(t *testing.T) {
|
||||
structure, err := ParseTestsStruct()
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, group := range structure.Groups {
|
||||
require.NotEmptyf(t, group.Tag, "group tag must not be empty: %v", group)
|
||||
require.NotEmptyf(t, group.Name, "group name must not be empty: %v", group)
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue