fdf81e6de91587ce0b6037f5d88aac20fd57ee0f
[icn/sdwan.git] /
1 /*
2 * Copyright 2018 TechMahindra
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *     http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15  */
16
17 package auth
18
19 import (
20         "crypto/tls"
21         "testing"
22 )
23
24 //Unit test to varify GetTLSconfig func and varify the tls config min version to be 771
25 //Assuming cert file name as auth_test.cert
26 func TestGetTLSConfig(t *testing.T) {
27         _, err := GetTLSConfig("filedoesnotexist.cert", "filedoesnotexist.cert", "filedoesnotexist.cert")
28         if err == nil {
29                 t.Errorf("Test failed, expected error but got none")
30         }
31         tlsConfig, err := GetTLSConfig("../../../tests/certs/auth_test_certificate.pem",
32                 "../../../tests/certs/auth_test_certificate.pem",
33                 "../../../tests/certs/auth_test_key.pem")
34         if err != nil {
35                 t.Fatal("Test Failed as GetTLSConfig returned error: " + err.Error())
36         }
37         expected := tls.VersionTLS12
38         actual := tlsConfig.MinVersion
39         if tlsConfig != nil {
40                 if int(actual) != expected {
41                         t.Errorf("Test Failed due to version mismatch")
42                 }
43                 if tlsConfig == nil {
44                         t.Errorf("Test Failed due to GetTLSConfig returned nil")
45                 }
46         }
47 }