[OOM-K8S-CERT-EXTERNAL-PROVIDER] Add CertificateRequest controller test
[oom/platform/cert-service.git] / certServiceK8sExternalProvider / src / testdata / utils.go
1 /*
2  * ============LICENSE_START=======================================================
3  * oom-certservice-k8s-external-provider
4  * ================================================================================
5  * Copyright (C) 2020 Nokia. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package testdata
22
23 import (
24         "bytes"
25         "io/ioutil"
26         "log"
27         "testing"
28 )
29
30 func ReadFile(filename string) []byte {
31         certRequest, err := ioutil.ReadFile(filename)
32         if err != nil {
33                 log.Fatal(err)
34         }
35         return certRequest
36 }
37
38 func VerifyCertsAreEqualToExpected(t *testing.T, signedPEM []byte, trustedCAs []byte) {
39         expectedSignedFilename := "../cmpv2provisioner/testdata/expected_signed.pem"
40         expectedTrustedFilename := "../cmpv2provisioner/testdata/expected_trusted.pem"
41
42         VerifyThatConditionIsTrue(AreSlicesEqual(signedPEM,
43                 ReadFile(expectedSignedFilename)), "Signed pem is different than expected.", t)
44         VerifyThatConditionIsTrue(AreSlicesEqual(trustedCAs,
45                 ReadFile(expectedTrustedFilename)), "Trusted CAs pem is different than expected.", t)
46 }
47
48 func AreSlicesEqual(slice1 []byte, slice2 []byte) bool {
49         return bytes.Compare(slice1, slice2) == 0
50 }
51
52 func VerifyThatConditionIsTrue(cond bool, message string, t *testing.T) {
53         if !cond {
54                 t.Fatal(message)
55         }
56 }