PostgreSQL - Grant privileges as superuser
ALTER DEFAULT PRIVILEGES without a FOR ROLE clause alters the default privileges for objects created by only the current role (the role executing the ALTER DEFAULT PRIVILEGES).  So in the first case, you altered the superuser's default privileges, which has no effect on testuser's default privileges.