418 lines (399 with data), 17.7 kB
AT_BANNER([API checks])
AT_SETUP([C Happy path (static and dynamic)])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([case0000], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([C Missing calls (static and dynamic)])
AT_CHECK([case0001], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([C Getter and setter methods])
# skip if the address is not available
AT_CHECK([iface_ip_address.sh $(iface_name.sh inet6 1) 6], [0], [ignore], [ignore])
# kill previous daemon
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
# create X.509 certificate(s)
AT_CHECK([tls_setup.sh], [0], [ignore], [ignore])
# restart the daemon
AT_CHECK([flom -s /tmp/flom_socket_name --tls-certificate=CA1/peer2_CA1_cert.pem --tls-private-key=CA1/peer2_CA1_key.pem --tls-ca-certificate=CA1/cacert.pem --tls-check-peer-id=yes -d -1 -- true], [0], [ignore], [ignore])
AT_DATA([expout],
[[flom_handle_get_socket_name() = '/tmp/flom-@USER@'
flom_handle_get_socket_name() = '/tmp/flom_socket_name'
flom_handle_get_trace_filename() = '/tmp/flom.trc'
flom_handle_get_resource_name() = '_RESOURCE'
flom_handle_get_resource_name() = 'red.green.blue'
flom_handle_get_resource_create() = 1
flom_handle_get_resource_create() = 0
flom_handle_get_resource_create() = 1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_quantity() = 1
flom_handle_get_resource_quantity() = 3
flom_handle_get_lock_mode() = 5
flom_handle_get_lock_mode() = 4
flom_handle_get_resource_idle_lifespan() = 0
flom_handle_get_resource_idle_lifespan() = 10000
flom_handle_get_unicast_address() = '(null)'
flom_handle_get_unicast_address() = '127.0.0.1'
flom_handle_get_multicast_address() = '(null)'
flom_handle_get_multicast_address() = '224.0.0.1'
flom_handle_get_unicast_port() = 28015
flom_handle_get_unicast_port() = 7777
flom_handle_get_multicast_port() = 28015
flom_handle_get_multicast_port() = 8888
flom_handle_get_discovery_attempts() = 2
flom_handle_get_discovery_attempts() = 5
flom_handle_get_discovery_timeout() = 500
flom_handle_get_discovery_timeout() = 750
flom_handle_get_discovery_ttl() = 1
flom_handle_get_discovery_ttl() = 2
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 1
staticHandleHappyPath locked element is red
flom_handle_get_socket_name() = '/tmp/flom-@USER@'
flom_handle_get_socket_name() = '/tmp/flom_socket_name'
flom_handle_get_trace_filename() = '/tmp/flom.trc'
flom_handle_get_resource_name() = '_RESOURCE'
flom_handle_get_resource_name() = 'red.green.blue'
flom_handle_get_resource_create() = 1
flom_handle_get_resource_create() = 0
flom_handle_get_resource_create() = 1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_quantity() = 1
flom_handle_get_resource_quantity() = 3
flom_handle_get_lock_mode() = 5
flom_handle_get_lock_mode() = 4
flom_handle_get_resource_idle_lifespan() = 0
flom_handle_get_resource_idle_lifespan() = 10000
flom_handle_get_unicast_address() = '(null)'
flom_handle_get_unicast_address() = '127.0.0.1'
flom_handle_get_multicast_address() = '(null)'
flom_handle_get_multicast_address() = '224.0.0.1'
flom_handle_get_unicast_port() = 28015
flom_handle_get_unicast_port() = 7777
flom_handle_get_multicast_port() = 28015
flom_handle_get_multicast_port() = 8888
flom_handle_get_discovery_attempts() = 2
flom_handle_get_discovery_attempts() = 5
flom_handle_get_discovery_timeout() = 500
flom_handle_get_discovery_timeout() = 750
flom_handle_get_discovery_ttl() = 1
flom_handle_get_discovery_ttl() = 2
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 1
dynamicHandleHappyPath locked element is green
]])
AT_CHECK([case0002 $(iface_name.sh inet6 1)], [0], [expout], [ignore])
AT_CLEANUP
AT_SETUP([C wrong resource unlock])
AT_CHECK([pkill flom], [0], [ignore], [ignore])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([case0003 1], [0], [ignore], [ignore])
AT_CHECK([flom -r resource1 -- true], [0], [ignore], [ignore])
AT_CHECK([flom -r resource2 -- true], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([C++ Happy path (static and dynamic)])
AT_CHECK([if test "$CPPAPI" = "no"; then exit 77; fi])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([case1000], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([C++ Missing calls (static and dynamic)])
AT_CHECK([if test "$CPPAPI" = "no"; then exit 77; fi])
AT_CHECK([case1001], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([C++ Getter and setter methods])
AT_CHECK([if test "$CPPAPI" = "no"; then exit 77; fi])
# skip if the address is not available
AT_CHECK([iface_ip_address.sh $(iface_name.sh inet6 1) 6], [0], [ignore], [ignore])
# kill previous daemon
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
# create X.509 certificate(s)
AT_CHECK([tls_setup.sh], [0], [ignore], [ignore])
# restart the daemon
AT_CHECK([flom -s /tmp/flom_socket_name --tls-certificate=CA1/peer2_CA1_cert.pem --tls-private-key=CA1/peer2_CA1_key.pem --tls-ca-certificate=CA1/cacert.pem --tls-check-peer-id=yes -d -1 -- true], [0], [ignore], [ignore])
AT_DATA([expout],
[[FlomHandle.getSocketName() = '/tmp/flom-@USER@'
FlomHandle.getSocketName() = '/tmp/flom_socket_name'
FlomHandle.getTraceFilename() = '/tmp/flom.trc'
FlomHandle.getResourceName() = '_RESOURCE'
FlomHandle.getResourceName() = 'red.blue.green'
FlomHandle.getResourceCreate() = 1
FlomHandle.getResourceCreate() = 0
FlomHandle.getResourceCreate() = 1
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceQuantity() = 1
FlomHandle.getResourceQuantity() = 3
FlomHandle.getLockMode() = 5
FlomHandle.getLockMode() = 4
FlomHandle.getResourceIdleLifespan() = 0
FlomHandle.getResourceIdleLifespan() = 10000
FlomHandle.getUnicastAddress() = ''
FlomHandle.getUnicastAddress() = '127.0.0.1'
FlomHandle.getMulticastAddress() = ''
FlomHandle.getMulticastAddress() = '224.0.0.1'
FlomHandle.getUnicastPort() = 28015
FlomHandle.getUnicastPort() = 7777
FlomHandle.getMulticastPort() = 28015
FlomHandle.getMulticastPort() = 8888
FlomHandle.getDiscoveryAttempts() = 2
FlomHandle.getDiscoveryAttempts() = 5
FlomHandle.getDiscoveryTimeout() = 500
FlomHandle.getDiscoveryTimeout() = 750
FlomHandle.getDiscoveryTtl() = 1
FlomHandle.getDiscoveryTtl() = 2
FlomHandle.getTlsCheckPeerId() = 0
FlomHandle.getTlsCheckPeerId() = 0
FlomHandle.getTlsCheckPeerId() = 1
staticHandleHappyPath locked element is red
FlomHandle->getSocketName() = '/tmp/flom-@USER@'
FlomHandle->getSocketName() = '/tmp/flom_socket_name'
FlomHandle->getTraceFilename() = '/tmp/flom.trc'
FlomHandle->getResourceName() = '_RESOURCE'
FlomHandle->getResourceName() = 'red.blue.green'
FlomHandle->getResourceCreate() = 1
FlomHandle->getResourceCreate() = 0
FlomHandle->getResourceCreate() = 1
FlomHandle->getResourceTimeout() = -1
FlomHandle->getResourceTimeout() = -1
FlomHandle->getResourceQuantity() = 1
FlomHandle->getResourceQuantity() = 3
FlomHandle->getLockMode() = 5
FlomHandle->getLockMode() = 4
FlomHandle->getResourceIdleLifespan() = 0
FlomHandle->getResourceIdleLifespan() = 10000
FlomHandle->getUnicastAddress() = ''
FlomHandle->getUnicastAddress() = '127.0.0.1'
FlomHandle->getMulticastAddress() = ''
FlomHandle->getMulticastAddress() = '224.0.0.1'
FlomHandle->getUnicastPort() = 28015
FlomHandle->getUnicastPort() = 7777
FlomHandle->getMulticastPort() = 28015
FlomHandle->getMulticastPort() = 8888
FlomHandle->getDiscoveryAttempts() = 2
FlomHandle->getDiscoveryAttempts() = 5
FlomHandle->getDiscoveryTimeout() = 500
FlomHandle->getDiscoveryTimeout() = 750
FlomHandle->getDiscoveryTtl() = 1
FlomHandle->getDiscoveryTtl() = 2
FlomHandle->getTlsCheckPeerId() = 0
FlomHandle->getTlsCheckPeerId() = 0
FlomHandle->getTlsCheckPeerId() = 1
dynamicHandleHappyPath locked element is blue
]])
AT_CHECK([case1002 $(iface_name.sh inet6 1)], [0], [expout], [ignore])
AT_CLEANUP
AT_SETUP([Java Happy path])
AT_CHECK([if test "$JAVAAPI" = "no"; then exit 77; fi])
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([java -Djava.library.path=@abs_top_builddir@/src/java/.libs -cp @abs_top_builddir@/src/java/flom.jar:@abs_top_builddir@/tests/src case4000], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Java Missing calls])
AT_CHECK([if test "$JAVAAPI" = "no"; then exit 77; fi])
AT_CHECK([java -Djava.library.path=@abs_top_builddir@/src/java/.libs -cp @abs_top_builddir@/src/java/flom.jar:@abs_top_builddir@/tests/src case4001], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Java null strings])
AT_CHECK([if test "$JAVAAPI" = "no"; then exit 77; fi])
AT_CHECK([java -Djava.library.path=@abs_top_builddir@/src/java/.libs -cp @abs_top_builddir@/src/java/flom.jar:@abs_top_builddir@/tests/src case4003], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Java Getter and setter methods])
AT_CHECK([if test "$JAVAAPI" = "no"; then exit 77; fi])
# skip if the address is not available
AT_CHECK([iface_ip_address.sh $(iface_name.sh inet6 1) 6], [0], [ignore], [ignore])
# kill previous daemon
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
# create X.509 certificate(s)
AT_CHECK([tls_setup.sh], [0], [ignore], [ignore])
# restart the daemon
AT_CHECK([flom -s /tmp/flom_socket_name --tls-certificate=CA1/peer2_CA1_cert.pem --tls-private-key=CA1/peer2_CA1_key.pem --tls-ca-certificate=CA1/cacert.pem --tls-check-peer-id=yes -d -1 -- true], [0], [ignore], [ignore])
AT_DATA([expout],
[[FlomHandle.getSocketName() = '/tmp/flom-@USER@'
FlomHandle.getSocketName() = '/tmp/flom_socket_name'
FlomHandle.getTraceFilename() = '/tmp/flom.trc'
FlomHandle.getResourceName() = '_RESOURCE'
FlomHandle.getResourceName() = 'red.blue.green'
FlomHandle.getResourceCreate() = true
FlomHandle.getResourceCreate() = false
FlomHandle.getResourceCreate() = true
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceQuantity() = 1
FlomHandle.getResourceQuantity() = 3
FlomHandle.getLockMode() = 5
FlomHandle.getLockMode() = 4
FlomHandle.getResourceIdleLifespan() = 0
FlomHandle.getResourceIdleLifespan() = 10000
FlomHandle.getUnicastAddress() = ''
FlomHandle.getUnicastAddress() = '127.0.0.1'
FlomHandle.getMulticastAddress() = ''
FlomHandle.getMulticastAddress() = '224.0.0.1'
FlomHandle.getUnicastPort() = 28015
FlomHandle.getUnicastPort() = 7777
FlomHandle.getMulticastPort() = 28015
FlomHandle.getMulticastPort() = 8888
FlomHandle.getDiscoveryAttempts() = 2
FlomHandle.getDiscoveryAttempts() = 5
FlomHandle.getDiscoveryTimeout() = 500
FlomHandle.getDiscoveryTimeout() = 750
FlomHandle.getDiscoveryTtl() = 1
FlomHandle.getDiscoveryTtl() = 2
FlomHandle.getTlsCheckPeerId() = false
FlomHandle.getTlsCheckPeerId() = false
FlomHandle.getTlsCheckPeerId() = true
HappyPath locked element is red
FlomHandle.getSocketName() = '/tmp/flom-@USER@'
FlomHandle.getSocketName() = '/tmp/flom_socket_name'
FlomHandle.getTraceFilename() = '/tmp/flom.trc'
FlomHandle.getResourceName() = '_RESOURCE'
FlomHandle.getResourceName() = 'red.blue.green'
FlomHandle.getResourceCreate() = true
FlomHandle.getResourceCreate() = false
FlomHandle.getResourceCreate() = true
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceTimeout() = -1
FlomHandle.getResourceQuantity() = 1
FlomHandle.getResourceQuantity() = 3
FlomHandle.getLockMode() = 5
FlomHandle.getLockMode() = 4
FlomHandle.getResourceIdleLifespan() = 0
FlomHandle.getResourceIdleLifespan() = 10000
FlomHandle.getUnicastAddress() = ''
FlomHandle.getUnicastAddress() = '127.0.0.1'
FlomHandle.getMulticastAddress() = ''
FlomHandle.getMulticastAddress() = '224.0.0.1'
FlomHandle.getUnicastPort() = 28015
FlomHandle.getUnicastPort() = 7777
FlomHandle.getMulticastPort() = 28015
FlomHandle.getMulticastPort() = 8888
FlomHandle.getDiscoveryAttempts() = 2
FlomHandle.getDiscoveryAttempts() = 5
FlomHandle.getDiscoveryTimeout() = 500
FlomHandle.getDiscoveryTimeout() = 750
FlomHandle.getDiscoveryTtl() = 1
FlomHandle.getDiscoveryTtl() = 2
FlomHandle.getTlsCheckPeerId() = false
FlomHandle.getTlsCheckPeerId() = false
FlomHandle.getTlsCheckPeerId() = true
HappyPath locked element is blue
]])
AT_CHECK([java -Djava.library.path=@abs_top_builddir@/src/java/.libs -cp @abs_top_builddir@/src/java/flom.jar:@abs_top_builddir@/tests/src case4002 $(iface_name.sh inet6 1)], [0], [expout], [ignore])
AT_CLEANUP
AT_SETUP([PHP Happy path])
AT_CHECK([if test "$PHPAPI" = "no"; then exit 77; fi])
AT_CHECK([pkill flom], [0], [ignore], [ignore])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([php -d extension=@abs_top_builddir@/src/php/.libs/flom-php-module.so $PHPPATH/case2000.php], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([PHP Missing calls])
AT_CHECK([if test "$PHPAPI" = "no"; then exit 77; fi])
AT_CHECK([php -d extension=@abs_top_builddir@/src/php/.libs/flom-php-module.so $PHPPATH/case2001.php], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([PHP Getter and setter methods])
AT_CHECK([if test "$PHPAPI" = "no"; then exit 77; fi])
# skip if the address is not available
AT_CHECK([iface_ip_address.sh $(iface_name.sh inet6 1) 6], [0], [ignore], [ignore])
# kill previous daemon
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
# create X.509 certificate(s)
AT_CHECK([tls_setup.sh], [0], [ignore], [ignore])
# restart the daemon
AT_CHECK([flom -s /tmp/flom_socket_name --tls-certificate=CA1/peer2_CA1_cert.pem --tls-private-key=CA1/peer2_CA1_key.pem --tls-ca-certificate=CA1/cacert.pem --tls-check-peer-id=yes -d -1 -- true], [0], [ignore], [ignore])
AT_DATA([expout],
[[flom_handle_get_socket_name() = '/tmp/flom-@USER@'
flom_handle_get_socket_name() = '/tmp/flom_socket_name'
flom_handle_get_trace_filename() = '/tmp/flom.trc'
flom_handle_get_resource_name() = '_RESOURCE'
flom_handle_get_resource_name() = 'red.green.blue'
flom_handle_get_resource_create() = 1
flom_handle_get_resource_create() = 0
flom_handle_get_resource_create() = 1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_quantity() = 1
flom_handle_get_resource_quantity() = 3
flom_handle_get_lock_mode() = 5
flom_handle_get_lock_mode() = 4
flom_handle_get_resource_idle_lifespan() = 0
flom_handle_get_resource_idle_lifespan() = 10000
flom_handle_get_unicast_address() = ''
flom_handle_get_unicast_address() = '127.0.0.1'
flom_handle_get_multicast_address() = ''
flom_handle_get_multicast_address() = '224.0.0.1'
flom_handle_get_unicast_port() = 28015
flom_handle_get_unicast_port() = 7777
flom_handle_get_multicast_port() = 28015
flom_handle_get_multicast_port() = 8888
flom_handle_get_discovery_attempts() = 2
flom_handle_get_discovery_attempts() = 5
flom_handle_get_discovery_timeout() = 500
flom_handle_get_discovery_timeout() = 750
flom_handle_get_discovery_ttl() = 1
flom_handle_get_discovery_ttl() = 2
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 0
happy_path locked element is red
]])
AT_CHECK([php -d extension=@abs_top_builddir@/src/php/.libs/flom-php-module.so $PHPPATH/case2002.php], [0], [expout], [ignore])
AT_CLEANUP
AT_SETUP([Python Happy path])
AT_CHECK([if test "$PYTHONAPI" = "no"; then exit 77; fi])
AT_CHECK([pkill flom], [0], [ignore], [ignore])
AT_CHECK([flom -d -1 -- true], [0], [ignore], [ignore])
AT_CHECK([python $PYTHONPATH/case3000.py], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Python Missing calls])
AT_CHECK([if test "$PYTHONAPI" = "no"; then exit 77; fi])
AT_CHECK([python $PYTHONPATH/case3001.py], [0], [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Python Getter and setter methods])
AT_CHECK([if test "$PYTHONAPI" = "no"; then exit 77; fi])
# skip if the address is not available
AT_CHECK([iface_ip_address.sh $(iface_name.sh inet6 1) 6], [0], [ignore], [ignore])
# kill previous daemon
AT_CHECK([pkill flom], [ignore], [ignore], [ignore])
# create X.509 certificate(s)
AT_CHECK([tls_setup.sh], [0], [ignore], [ignore])
# restart the daemon
AT_CHECK([flom -s /tmp/flom_socket_name --tls-certificate=CA1/peer2_CA1_cert.pem --tls-private-key=CA1/peer2_CA1_key.pem --tls-ca-certificate=CA1/cacert.pem --tls-check-peer-id=yes -d -1 -- true], [0], [ignore], [ignore])
AT_DATA([expout],
[[flom_handle_get_socket_name() = '/tmp/flom-@USER@'
flom_handle_get_socket_name() = '/tmp/flom_socket_name'
flom_handle_get_trace_filename() = '/tmp/flom.trc'
flom_handle_get_resource_name() = '_RESOURCE'
flom_handle_get_resource_name() = 'red.green.blue'
flom_handle_get_resource_create() = 1
flom_handle_get_resource_create() = 0
flom_handle_get_resource_create() = 1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_timeout() = -1
flom_handle_get_resource_quantity() = 1
flom_handle_get_resource_quantity() = 3
flom_handle_get_lock_mode() = 5
flom_handle_get_lock_mode() = 4
flom_handle_get_resource_idle_lifespan() = 0
flom_handle_get_resource_idle_lifespan() = 10000
flom_handle_get_unicast_address() = 'None'
flom_handle_get_unicast_address() = '127.0.0.1'
flom_handle_get_multicast_address() = 'None'
flom_handle_get_multicast_address() = '224.0.0.1'
flom_handle_get_unicast_port() = 28015
flom_handle_get_unicast_port() = 7777
flom_handle_get_multicast_port() = 28015
flom_handle_get_multicast_port() = 8888
flom_handle_get_discovery_attempts() = 2
flom_handle_get_discovery_attempts() = 5
flom_handle_get_discovery_timeout() = 500
flom_handle_get_discovery_timeout() = 750
flom_handle_get_discovery_ttl() = 1
flom_handle_get_discovery_ttl() = 2
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 0
flom_handle_get_tls_check_peer_id() = 1
happy_path locked element is 'red'
]])
AT_CHECK([python $PYTHONPATH/case3002.py], [0], [expout], [ignore])
AT_CHECK([pkill flom], [0], [ignore], [ignore])
AT_CLEANUP