github.com/confluentinc/cli@v1.100.0/test/kafka_test.go (about)

     1  package test
     2  
     3  func (s *CLITestSuite) TestKafka() {
     4  	// TODO: add --config flag to all commands or ENVVAR instead of using standard config file location
     5  	tests := []CLITest{
     6  		{args: "kafka cluster --help", fixture: "kafka/kafka-cluster-help.golden"},
     7  		{args: "environment use a-595", fixture: "kafka/0.golden"},
     8  		{args: "kafka cluster list", fixture: "kafka/6.golden"},
     9  		{args: "kafka cluster list -o json", fixture: "kafka/7.golden"},
    10  		{args: "kafka cluster list -o yaml", fixture: "kafka/8.golden"},
    11  
    12  		{args: "kafka cluster create", fixture: "kafka/1.golden", wantErrCode: 1},
    13  		{args: "kafka cluster create my-new-cluster --cloud aws --region us-east-1 --availability single-zone", fixture: "kafka/2.golden"},
    14  		{args: "kafka cluster create my-failed-cluster --cloud oops --region us-east1 --availability single-zone", fixture: "kafka/kafka-cloud-provider-error.golden", wantErrCode: 1},
    15  		{args: "kafka cluster create my-failed-cluster --cloud aws --region oops --availability single-zone", fixture: "kafka/kafka-cloud-region-error.golden", wantErrCode: 1},
    16  		{args: "kafka cluster create my-failed-cluster --cloud aws --region us-east-1 --availability single-zone --type oops", fixture: "kafka/kafka-create-type-error.golden", wantErrCode: 1},
    17  		{args: "kafka cluster create my-failed-cluster --cloud aws --region us-east-1 --availability single-zone --type dedicated --cku 0", fixture: "kafka/kafka-cku-error.golden", wantErrCode: 1},
    18  		{args: "kafka cluster create my-dedicated-cluster --cloud aws --region us-east-1 --type dedicated --cku 1", fixture: "kafka/22.golden"},
    19  		{args: "kafka cluster create my-new-cluster --cloud aws --region us-east-1 --availability single-zone -o json", fixture: "kafka/23.golden"},
    20  		{args: "kafka cluster create my-new-cluster --cloud aws --region us-east-1 --availability single-zone -o yaml", fixture: "kafka/24.golden"},
    21  		{args: "kafka cluster create my-new-cluster --cloud aws --region us-east-1 --availability oops-zone", fixture: "kafka/kafka-availability-zone-error.golden", wantErrCode: 1},
    22  
    23  		{args: "kafka cluster update lkc-update ", fixture: "kafka/kafka-create-flag-error.golden", wantErrCode: 1},
    24  		{args: "kafka cluster update lkc-update --name lkc-update-name", fixture: "kafka/26.golden"},
    25  		{args: "kafka cluster update lkc-update --name lkc-update-name -o json", fixture: "kafka/28.golden"},
    26  		{args: "kafka cluster update lkc-update --name lkc-update-name -o yaml", fixture: "kafka/29.golden"},
    27  		{args: "kafka cluster update lkc-update-dedicated --name lkc-update-dedicated-name --cku 2", fixture: "kafka/27.golden"},
    28  		{args: "kafka cluster update lkc-update-dedicated --cku 2", fixture: "kafka/39.golden"},
    29  		{args: "kafka cluster update lkc-update --cku 2", fixture: "kafka/kafka-cluster-expansion-error.golden", wantErrCode: 1},
    30  
    31  		{args: "kafka cluster delete", fixture: "kafka/3.golden", wantErrCode: 1},
    32  		{args: "kafka cluster delete lkc-unknown", fixture: "kafka/kafka-delete-unknown-error.golden", wantErrCode: 1},
    33  		{args: "kafka cluster delete lkc-def973", fixture: "kafka/5.golden"},
    34  
    35  		{args: "kafka cluster use a-595", fixture: "kafka/40.golden"},
    36  
    37  		{args: "kafka region list", fixture: "kafka/14.golden"},
    38  		{args: "kafka region list -o json", fixture: "kafka/15.golden"},
    39  		{args: "kafka region list -o json", fixture: "kafka/16.golden"},
    40  		{args: "kafka region list --cloud gcp", fixture: "kafka/9.golden"},
    41  		{args: "kafka region list --cloud aws", fixture: "kafka/10.golden"},
    42  		{args: "kafka region list --cloud azure", fixture: "kafka/11.golden"},
    43  
    44  		{args: "kafka cluster describe lkc-describe", fixture: "kafka/17.golden"},
    45  		{args: "kafka cluster describe lkc-describe -o json", fixture: "kafka/18.golden"},
    46  		{args: "kafka cluster describe lkc-describe -o yaml", fixture: "kafka/19.golden"},
    47  
    48  		{args: "kafka cluster describe lkc-describe-dedicated", fixture: "kafka/30.golden"},
    49  		{args: "kafka cluster describe lkc-describe-dedicated -o json", fixture: "kafka/31.golden"},
    50  		{args: "kafka cluster describe lkc-describe-dedicated -o yaml", fixture: "kafka/32.golden"},
    51  
    52  		{args: "kafka cluster describe lkc-describe-dedicated-pending", fixture: "kafka/33.golden"},
    53  		{args: "kafka cluster describe lkc-describe-dedicated-pending -o json", fixture: "kafka/34.golden"},
    54  		{args: "kafka cluster describe lkc-describe-dedicated-pending -o yaml", fixture: "kafka/35.golden"},
    55  
    56  		{args: "kafka cluster describe lkc-describe-dedicated-with-encryption", fixture: "kafka/36.golden"},
    57  		{args: "kafka cluster describe lkc-describe-dedicated-with-encryption -o json", fixture: "kafka/37.golden"},
    58  		{args: "kafka cluster describe lkc-describe-dedicated-with-encryption -o yaml", fixture: "kafka/38.golden"},
    59  
    60  		{args: "kafka acl list --cluster lkc-acls", fixture: "kafka/kafka-acls-list.golden"},
    61  		{args: "kafka acl create --cluster lkc-acls --allow --service-account 7272 --operation READ --operation DESCRIBED --topic 'test-topic'", fixture: "kafka/kafka-acls-invalid-operation.golden", wantErrCode: 1},
    62  		{args: "kafka acl create --cluster lkc-acls --allow --service-account 7272 --operation READ --operation DESCRIBE --topic 'test-topic'"},
    63  		{args: "kafka acl delete --cluster lkc-acls --allow --service-account 7272 --operation READ --operation DESCRIBE --topic 'test-topic'"},
    64  
    65  		{args: "kafka link list --cluster lkc-links", fixture: "kafka/kafka20.golden", wantErrCode: 0},
    66  		{args: "kafka link list --cluster lkc-links -o json", fixture: "kafka/kafka21.golden", wantErrCode: 0},
    67  		{args: "kafka link list --cluster lkc-links -o yaml", fixture: "kafka/kafka22.golden", wantErrCode: 0},
    68  		{args: "kafka link describe --cluster lkc-links my-link", fixture: "kafka/kafka23.golden", wantErrCode: 0},
    69  		{args: "kafka link describe --cluster lkc-links my-link -o json", fixture: "kafka/kafka24.golden", wantErrCode: 0},
    70  		{args: "kafka link describe --cluster lkc-links my-link -o yaml", fixture: "kafka/kafka25.golden", wantErrCode: 0},
    71  
    72  		{args: "kafka topic mirror stop test-topic", login: "default", useKafka: "lkc-topics", authKafka: "true"},
    73  		{args: "kafka topic mirror stop not-found", login: "default", useKafka: "lkc-topics", authKafka: "true", fixture: "kafka/mirror-topic-not-found.golden", wantErrCode: 1},
    74  		{args: "kafka topic mirror bad test-topic", login: "default", useKafka: "lkc-topics", authKafka: "true", fixture: "kafka/mirror-invalid.golden", wantErrCode: 1},
    75  	}
    76  
    77  	resetConfiguration(s.T(), "ccloud")
    78  	kafkaURL := serveKafkaAPI(s.T()).URL
    79  	loginURL := serve(s.T(), kafkaURL).URL
    80  
    81  	for _, tt := range tests {
    82  		tt.login = "default"
    83  		tt.workflow = true
    84  		s.runCcloudTest(tt, loginURL)
    85  	}
    86  }