[test/migration] fix crash on execution
This assertion is there for unclear reasons.
===================== unittest_migration.py =======================
-> creating tables [====================]
-> inserting default user and default groups.
-> storing the schema in the database [====================]
-> database for instance data initialized.
F
======================================================================
FAIL: test_db_creation (unittest_migration.BaseCreationTC)
make sure database can be created
----------------------------------------------------------------------
Traceback (most recent call last)
File "/home/auc/confs/forges/logilab/common/testlib.py", line 661, in _proceed
testfunc(*args, **kwargs)
File "/home/auc/confs/forges/cubicweb/test/unittest_migration.py", line 106, in test_db_creation
handler.build_db_cache()
File "/home/auc/confs/forges/cubicweb/devtools/__init__.py", line 469, in build_db_cache
self.init_test_database()
File "/home/auc/confs/forges/cubicweb/devtools/__init__.py", line 729, in init_test_database
init_repository(self.config, interactive=False)
File "/home/auc/confs/forges/cubicweb/server/__init__.py", line 217, in init_repository
repo = Repository(config, vreg=vreg)
File "/home/auc/confs/forges/cubicweb/server/repository.py", line 197, in __init__
self.init_cnxset_pool()
File "/home/auc/confs/forges/cubicweb/server/repository.py", line 220, in init_cnxset_pool
config.bootstrap_cubes()
File "/home/auc/confs/forges/cubicweb/devtools/__init__.py", line 176, in bootstrap_cubes
super(TestServerConfiguration, self).bootstrap_cubes()
File "/home/auc/confs/forges/cubicweb/server/serverconfig.py", line 279, in bootstrap_cubes
self.init_cubes(self.expand_cubes(splitstrip(line)))
File "/home/auc/confs/forges/cubicweb/cwconfig.py", line 1022, in init_cubes
super(CubicWebConfiguration, self).init_cubes(cubes)
File "/home/auc/confs/forges/cubicweb/cwconfig.py", line 798, in init_cubes
assert self._cubes is None, repr(self._cubes)
AssertionError: ('card', 'file', 'localperms', 'tag')
/* -*- sql -*-
postgres specific registered procedures,
require the plpgsql language installed
*/
DROP FUNCTION IF EXISTS comma_join (anyarray) CASCADE;
CREATE FUNCTION comma_join (anyarray) RETURNS text AS $$
SELECT array_to_string($1, ', ')
$$ LANGUAGE SQL;;
CREATE FUNCTION cw_array_append_unique (anyarray, anyelement) RETURNS anyarray AS $$
SELECT array_append($1, (SELECT $2 WHERE $2 <> ALL($1)))
$$ LANGUAGE SQL;;
DROP AGGREGATE IF EXISTS group_concat (anyelement) CASCADE;
CREATE AGGREGATE group_concat (
basetype = anyelement,
sfunc = cw_array_append_unique,
stype = anyarray,
finalfunc = comma_join,
initcond = '{}'
);;
DROP FUNCTION IF EXISTS limit_size (fulltext text, format text, maxsize integer);
CREATE FUNCTION limit_size (fulltext text, format text, maxsize integer) RETURNS text AS $$
DECLARE
plaintext text;
BEGIN
IF char_length(fulltext) < maxsize THEN
RETURN fulltext;
END IF;
IF format = 'text/html' OR format = 'text/xhtml' OR format = 'text/xml' THEN
plaintext := regexp_replace(fulltext, '<[\\w/][^>]+>', '', 'g');
ELSE
plaintext := fulltext;
END IF;
IF char_length(plaintext) < maxsize THEN
RETURN plaintext;
ELSE
RETURN substring(plaintext from 1 for maxsize) || '...';
END IF;
END
$$ LANGUAGE plpgsql;;
DROP FUNCTION IF EXISTS text_limit_size (fulltext text, maxsize integer);
CREATE FUNCTION text_limit_size (fulltext text, maxsize integer) RETURNS text AS $$
BEGIN
RETURN limit_size(fulltext, 'text/plain', maxsize);
END
$$ LANGUAGE plpgsql;;