#!/bin/sh

set -e
set -x

# These are failing on 32 bits:
# test.unit.common.test_utils.TestPunchHoleReally.test_punch_a_hole
# test.unit.common.test_utils.Test_LibcWrapper.test_argument_plumbing

# This one, as per request from release team:
# https://bugs.debian.org/1074021
# test.unit.proxy.controllers.test_obj.TestECObjController.test_GET_disconnect

for i in $(py3versions -vr 2>/dev/null) ; do
	rm -rf .stestr
	stestr init
	PYTHON=python${i} stestr run --subunit --test-path test/unit 'test\.unit\.(?!common\.test_utils\.TestUtils\.test_get_logger_sysloghandler_plumbing|common\.middleware\.test_cname_lookup\.TestCNAMELookup.*|common\.test_db\.TestDatabaseBroker\.test_get.*|container\.test_sync\.TestContainerSync\.test_init.*|common\.test_utils\.TestPunchHoleReally\.test_punch_a_hole.*|common\.test_utils\.Test_LibcWrapper\.test_argument_plumbing.*|common\.test_utils\.TestUtils\.test_load_pkg_resource_importlib.*|common\.test_db_replicator\.TestHandoffsOnly.*|common\.test_db\.TestDatabaseBroker\.test_disk_preallocate|obj\.test_reconstructor\.TestWorkerReconstructor\.test_run_forever_recon_aggregation|common\.middleware\.test_xprofile\.TestProfileMiddleware\.test_call|common\.ring\.test_builder\.TestGetRequiredOverload\.test_perfect_four_zone_four_replica_bad_placement|common\.test_wsgi\.TestWSGI.*|obj\.test_expirer\.TestObjectExpirer\.test_delete_actual_object|common\.test_memcached\.TestMemcached\.test_get_conns_hostname6|common\.test_memcached\.TestMemcached\.test_get_conns_v6|common\.test_memcached\.TestMemcached\.test_get_conns_v6_default|obj\.test_reconstructor\.TestWorkerReconstructor\.test_run_forever_recon_aggregation|proxy\.controllers\.test_obj\.TestECObjController\.test_GET_with_duplicate_but_sufficient_frag_indexes|common\.test_utils\.TestUtils\.test_get_logger_name_and_route|obj\.test_expirer\.TestObjectExpirer\.test_failed_delete_continues_on|proxy\.test_mem_server\.TestProxyServer\.test_statsd_prefix|proxy\.controllers\.test_obj\.TestECObjController\.test_GET_read_timeout|proxy\.controllers\.test_base\.TestGetOrHeadHandler\.test_disconnected_logging|obj\.test_expirer\.TestObjectExpirer\.test_failed_delete_continues_on|obj\.test_replicator\.TestObjectReplicator\.test_update|obj\.test_ssync_receiver\.TestReceiver\.test_UPDATES_timeout|obj\.test_ssync_receiver\.TestReceiver\.test_UPDATES_no_problems_no_hard_disconnect|common\.test_memcached\.TestMemcached\.test_operations_timing_stats_with_incr_timeout|proxy\.controllers\.test_obj\.TestECObjController\.test_GET_disconnect)' | subunit2pyunit
	stestr slowest
done
