stats: string vector and node collector improvements
[vpp.git] / test / test_vpe_api.py
1 #  Copyright (c) 2019. Vinci Consulting Corp. All Rights Reserved.
2 #
3 #  Licensed under the Apache License, Version 2.0 (the "License");
4 #  you may not use this file except in compliance with the License.
5 #  You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #  Unless required by applicable law or agreed to in writing, software
10 #  distributed under the License is distributed on an "AS IS" BASIS,
11 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #  See the License for the specific language governing permissions and
13 #  limitations under the License.
14 import datetime
15 import time
16 import unittest
17 from framework import VppTestCase
18
19 enable_print = False
20
21
22 class TestVpeApi(VppTestCase):
23     """TestVpeApi"""
24
25     def test_log_dump_default(self):
26         rv = self.vapi.cli('test log notice fib entry this is a test')
27         rv = self.vapi.log_dump()
28         if enable_print:
29             print('\n'.join([str(v) for v in rv]))
30         self.assertTrue(rv)
31
32     def test_log_dump_timestamp_0(self):
33         rv = self.vapi.cli('test log notice fib entry this is a test')
34         rv = self.vapi.log_dump(start_timestamp=0.0)
35         if enable_print:
36             print('\n'.join([str(v) for v in rv]))
37         self.assertTrue(rv)
38
39     def test_log_dump_timestamp_future(self):
40         rv = self.vapi.cli('test log debug fib entry test')
41         rv = self.vapi.log_dump(start_timestamp=time.time() + 60.0)
42         if enable_print:
43             print('\n'.join([str(v) for v in rv]))
44         self.assertFalse(rv)
45
46     def test_show_vpe_system_time(self):
47         local_start_time = datetime.datetime.now()
48         rv = self.vapi.show_vpe_system_time()
49         self.assertTrue(rv.vpe_system_time > local_start_time -
50                         datetime.timedelta(hours=1.0),
51                         'system times differ by more than an hour.')
52         if enable_print:
53             print('\n'.join([str(v) for v in rv]))
54             print('%r %s' % (rv.vpe_system_time,
55                              rv.vpe_system_time))