]> git.proxmox.com Git - ovs.git/blob - tests/uuid.at
Fix ovs-dpctl-top by removing 3 wrong hunks in py3-compat.patch.
[ovs.git] / tests / uuid.at
1 AT_BANNER([UUID unit tests])
2
3 m4_define([UUID_REGEX],
4 [[[0-9a-f]\{8\}-[0-9a-f]\{4\}-4[0-9a-f]\{3\}-[89ab][0-9a-f]\{3\}-[0-9a-f]\{12\}$]])
5
6 m4_define([CHECK_UUID],
7 [if expr "$uuid" : 'UUID_REGEX' > /dev/null
8 then
9 :
10 else
11 echo "$uuid: not a random UUID"
12 exit 1
13 fi])
14
15 AT_SETUP([UUID generation, parsing, serialization])
16 AT_KEYWORDS([UUID])
17 AT_CHECK([
18 uuids=
19 for i in m4_for([count], [1], [100], [1], [count ]); do
20 # Generate random UUID and check that it is in the expected format.
21 uuid=`ovstest test-uuid`
22 CHECK_UUID
23
24 # Verify that $uuid does not duplicate any UUID generated so far.
25 case $uuids in
26 *$uuid*)
27 echo "$uuid: generated duplicate UUID"
28 exit 1
29 esac
30 uuids="$uuids $uuid"
31
32 # Verify that test-uuid parses and re-serializes this UUID correctly.
33 serialized=`ovstest test-uuid $uuid`
34 if test "$uuid" != "$serialized"; then
35 echo "$uuid: test-uuid serialized this as $serialized"
36 exit 1
37 fi
38 done], [0])
39 AT_CLEANUP