Coverage report: 25%

Files Functions Classes

coverage.py v7.13.5, created at 2026-05-07 08:14 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
python / felis / __init__.py (no function)   67% 6 2 0   100% 0 0   67%
python / felis / cli.py cli   0% 13 13 0   0% 8 0   0%
python / felis / cli.py create   0% 16 16 0   0% 6 0   0%
python / felis / cli.py create_indexes   0% 7 7 0   100% 0 0   0%
python / felis / cli.py drop_indexes   0% 7 7 0   100% 0 0   0%
python / felis / cli.py load_tap_schema   0% 4 4 0   100% 0 0   0%
python / felis / cli.py init_tap_schema   0% 5 5 0   0% 2 0   0%
python / felis / cli.py validate   0% 12 12 0   0% 4 0   0%
python / felis / cli.py diff   0% 20 20 0   0% 8 0   0%
python / felis / cli.py dump   0% 16 16 0   0% 12 0   0%
python / felis / cli.py (no function)   99% 93 1 0   50% 2 1   98%
python / felis / datamodel.py BaseObject.check_description   0% 8 8 0   0% 6 0   0%
python / felis / datamodel.py validate_ivoa_ucd   0% 6 6 0   0% 2 0   0%
python / felis / datamodel.py Column.check_value   0% 17 17 0   0% 18 0   0%
python / felis / datamodel.py Column.check_ivoa_ucd   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py Column.check_units   0% 11 11 0   0% 4 0   0%
python / felis / datamodel.py Column.check_length   0% 10 10 0   0% 6 0   0%
python / felis / datamodel.py Column.check_redundant_datatypes   0% 20 20 0   0% 12 0   0%
python / felis / datamodel.py Column.check_precision   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Column.check_votable_arraysize   0% 25 25 0   0% 18 0   0%
python / felis / datamodel.py Column.serialize_datatype   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py Column.deserialize_datatype   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py Column.check_votable_xtype   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Column._update_from_overrides   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Constraint.check_deferrable   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py CheckConstraint.serialize_type   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py UniqueConstraint.serialize_type   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py ForeignKeyConstraint.serialize_type   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py ForeignKeyConstraint.check_column_lengths   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Index.check_columns_or_expressions   0% 5 5 0   0% 4 0   0%
python / felis / datamodel.py ColumnGroup.check_ivoa_ucd   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py ColumnGroup.check_unique_columns   0% 4 4 0   0% 2 0   0%
python / felis / datamodel.py ColumnGroup._dereference_columns   0% 12 12 0   0% 6 0   0%
python / felis / datamodel.py ColumnGroup.serialize_columns   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py ColumnOverrides._check_non_nullable_overrides   0% 7 7 0   0% 6 0   0%
python / felis / datamodel.py ColumnOverrides.serialize_datatype   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py ColumnOverrides.deserialize_datatype   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Table.check_unique_column_names   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Table.check_tap_table_index   0% 6 6 0   0% 4 0   0%
python / felis / datamodel.py Table.check_tap_principal   0% 7 7 0   0% 6 0   0%
python / felis / datamodel.py Table._find_column_by_id   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Table._find_column_by_name   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Table.dereference_column_groups   0% 4 4 0   0% 2 0   0%
python / felis / datamodel.py Table._serialize_columns   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py SchemaIdVisitor.__init__   0% 2 2 0   100% 0 0   0%
python / felis / datamodel.py SchemaIdVisitor.add   0% 6 6 0   0% 6 0   0%
python / felis / datamodel.py SchemaIdVisitor.visit_schema   0% 5 5 0   0% 2 0   0%
python / felis / datamodel.py SchemaIdVisitor.visit_table   0% 5 5 0   0% 4 0   0%
python / felis / datamodel.py SchemaIdVisitor.visit_column   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py SchemaIdVisitor.visit_constraint   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py _strip_ids   0% 8 8 0   0% 6 0   0%
python / felis / datamodel.py _append_error   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py Schema._load_resources   0% 13 13 0   0% 4 0   0%
python / felis / datamodel.py Schema._find_table_by_name   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Schema._dereference_resource_columns   0% 17 17 0   0% 12 0   0%
python / felis / datamodel.py Schema._process_column_refs   0% 32 32 0   0% 16 0   0%
python / felis / datamodel.py Schema.generate_ids   0% 34 34 0   0% 34 0   0%
python / felis / datamodel.py Schema.check_unique_table_names   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Schema.check_tap_table_indexes   0% 11 11 0   0% 8 0   0%
python / felis / datamodel.py Schema.check_unique_constraint_names   0% 11 11 0   0% 8 0   0%
python / felis / datamodel.py Schema.check_unique_index_names   0% 11 11 0   0% 8 0   0%
python / felis / datamodel.py Schema.create_id_map   0% 9 9 0   0% 4 0   0%
python / felis / datamodel.py Schema._validate_column_id   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Schema._validate_foreign_key_column   0% 4 4 0   100% 0 0   0%
python / felis / datamodel.py Schema.check_constraints   0% 18 18 0   0% 14 0   0%
python / felis / datamodel.py Schema.__getitem__   0% 3 3 0   0% 2 0   0%
python / felis / datamodel.py Schema.__contains__   0% 1 1 0   100% 0 0   0%
python / felis / datamodel.py Schema.find_object_by_id   0% 4 4 0   0% 2 0   0%
python / felis / datamodel.py Schema.get_table_by_column   0% 4 4 0   0% 4 0   0%
python / felis / datamodel.py Schema.from_uri   0% 6 6 0   100% 0 0   0%
python / felis / datamodel.py Schema.from_stream   0% 3 3 0   100% 0 0   0%
python / felis / datamodel.py Schema._model_dump   0% 7 7 0   0% 6 0   0%
python / felis / datamodel.py Schema.dump_yaml   0% 2 2 0   100% 0 0   0%
python / felis / datamodel.py Schema.dump_json   0% 2 2 0   100% 0 0   0%
python / felis / datamodel.py (no function)   100% 307 0 0   100% 0 0   100%
python / felis / db / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
python / felis / db / _dialects.py _dialect   100% 1 0 0   100% 0 0   100%
python / felis / db / _dialects.py get_supported_dialects   100% 1 0 0   100% 0 0   100%
python / felis / db / _dialects.py _dialect_module   100% 1 0 0   100% 0 0   100%
python / felis / db / _dialects.py get_dialect_module   0% 3 3 0   0% 2 0   0%
python / felis / db / _dialects.py string_to_typeengine   0% 20 20 0   0% 10 0   0%
python / felis / db / _dialects.py (no function)   100% 23 0 0   100% 0 0   100%
python / felis / db / _sqltypes.py compile_tinyint   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py boolean   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py byte   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py short   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py int   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py long   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py float   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py double   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py char   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py string   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py unicode   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py text   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py binary   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py timestamp   0% 1 1 0   100% 0 0   0%
python / felis / db / _sqltypes.py get_type_func   0% 3 3 0   0% 2 0   0%
python / felis / db / _sqltypes.py _vary   0% 7 7 0   0% 4 0   0%
python / felis / db / _sqltypes.py (no function)   100% 44 0 0   100% 0 0   100%
python / felis / db / _variants.py _create_column_variant_overrides   100% 4 0 0   100% 2 0   100%
python / felis / db / _variants.py _get_column_variant_overrides   0% 1 1 0   100% 0 0   0%
python / felis / db / _variants.py _get_column_variant_override   0% 3 3 0   0% 2 0   0%
python / felis / db / _variants.py _process_variant_override   0% 9 9 0   0% 4 0   0%
python / felis / db / _variants.py make_variant_dict   0% 8 8 0   0% 4 0   0%
python / felis / db / _variants.py (no function)   100% 19 0 0   100% 0 0   100%
python / felis / db / database_context.py _normalize_statement   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py _create_mock_connection   0% 4 4 0   100% 0 0   0%
python / felis / db / database_context.py _dialect_name   0% 4 4 0   0% 2 0   0%
python / felis / db / database_context.py _clear_schema   0% 4 4 0   0% 4 0   0%
python / felis / db / database_context.py _get_existing_indexes   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py is_mock_url   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py is_sqlite_url   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py DatabaseContext.__exit__   0% 5 5 0   100% 0 0   0%
python / felis / db / database_context.py DatabaseContext.close   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.metadata   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.engine   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.dialect   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.dialect_name   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.initialize   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.drop   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.create_all   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.create_indexes   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.drop_indexes   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py DatabaseContext.execute   100% 0 0 1   100% 0 0   100%
python / felis / db / database_context.py _BaseContext.__init__   0% 8 8 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext.echo   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.echo   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext._validate_dialect   0% 4 4 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext.engine   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext.metadata   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.dialect   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.dialect_name   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.schema_name   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.connect   0% 2 2 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.execute   0% 10 10 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext.create_all   0% 6 6 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext._manage_indexes   0% 25 25 0   0% 14 0   0%
python / felis / db / database_context.py _BaseContext.create_indexes   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext.drop_indexes   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _BaseContext._required_schema_name   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py _BaseContext.close   0% 3 3 0   0% 2 0   0%
python / felis / db / database_context.py DatabaseContextFactory.register   100% 2 0 0   100% 0 0   100%
python / felis / db / database_context.py DatabaseContextFactory.register.decorator   75% 4 1 0   50% 2 1   67%
python / felis / db / database_context.py DatabaseContextFactory.register_class   0% 4 4 0   0% 2 0   0%
python / felis / db / database_context.py DatabaseContextFactory.create_context   0% 8 8 0   0% 4 0   0%
python / felis / db / database_context.py DatabaseContextFactory.get_supported_dialects   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py _SQLWriter.__init__   0% 2 2 0   100% 0 0   0%
python / felis / db / database_context.py _SQLWriter.write   0% 15 15 0   0% 10 0   0%
python / felis / db / database_context.py PostgreSQLContext.__init__   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py PostgreSQLContext.initialize   0% 10 10 0   0% 2 0   0%
python / felis / db / database_context.py PostgreSQLContext.drop   0% 6 6 0   100% 0 0   0%
python / felis / db / database_context.py MySQLContext.__init__   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MySQLContext.initialize   0% 12 12 0   0% 2 0   0%
python / felis / db / database_context.py MySQLContext.drop   0% 8 8 0   100% 0 0   0%
python / felis / db / database_context.py SQLiteContext.__init__   0% 2 2 0   100% 0 0   0%
python / felis / db / database_context.py SQLiteContext.initialize   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py SQLiteContext.drop   0% 5 5 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.__init__   0% 3 3 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.dialect   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.dialect_name   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.metadata   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.engine   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.initialize   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.drop   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.create_all   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.create_indexes   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.drop_indexes   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py MockContext.execute   0% 4 4 0   0% 2 0   0%
python / felis / db / database_context.py MockContext.close   0% 1 1 0   100% 0 0   0%
python / felis / db / database_context.py create_database_context   0% 23 23 0   0% 12 0   0%
python / felis / db / database_context.py (no function)   100% 132 0 12   100% 0 0   100%
python / felis / diff.py SchemaDiff.__init__   0% 3 3 0   100% 0 0   0%
python / felis / diff.py SchemaDiff.print   0% 1 1 0   100% 0 0   0%
python / felis / diff.py SchemaDiff.has_changes   0% 1 1 0   100% 0 0   0%
python / felis / diff.py FormattedSchemaDiff.__init__   0% 1 1 0   100% 0 0   0%
python / felis / diff.py FormattedSchemaDiff.print   0% 4 4 0   0% 4 0   0%
python / felis / diff.py FormattedSchemaDiff._print_header   0% 1 1 0   100% 0 0   0%
python / felis / diff.py FormattedSchemaDiff._handle_values_changed   0% 7 7 0   0% 2 0   0%
python / felis / diff.py FormattedSchemaDiff._handle_iterable_item_added   0% 5 5 0   0% 2 0   0%
python / felis / diff.py FormattedSchemaDiff._handle_iterable_item_removed   0% 5 5 0   0% 2 0   0%
python / felis / diff.py FormattedSchemaDiff._handle_dictionary_item_added   0% 6 6 0   0% 2 0   0%
python / felis / diff.py FormattedSchemaDiff._handle_dictionary_item_removed   0% 6 6 0   0% 2 0   0%
python / felis / diff.py FormattedSchemaDiff._get_id   0% 17 17 0   0% 12 0   0%
python / felis / diff.py FormattedSchemaDiff._get_key_display   0% 1 1 0   100% 0 0   0%
python / felis / diff.py FormattedSchemaDiff._parse_deepdiff_path   0% 11 11 0   0% 8 0   0%
python / felis / diff.py DatabaseDiff.__init__   0% 6 6 0   100% 0 0   0%
python / felis / diff.py DatabaseDiff.print   0% 2 2 0   0% 2 0   0%
python / felis / diff.py (no function)   100% 37 0 0   100% 0 0   100%
python / felis / metadata.py _handle_timestamp_column   0% 3 3 0   0% 2 0   0%
python / felis / metadata.py get_datatype_with_variants   0% 13 13 0   0% 8 0   0%
python / felis / metadata.py MetaDataBuilder.__init__   0% 8 8 0   0% 2 0   0%
python / felis / metadata.py MetaDataBuilder.build   0% 8 8 0   0% 4 0   0%
python / felis / metadata.py MetaDataBuilder.build_tables   0% 5 5 0   0% 4 0   0%
python / felis / metadata.py MetaDataBuilder.build_primary_key   0% 1 1 0   100% 0 0   0%
python / felis / metadata.py MetaDataBuilder.build_table   0% 11 11 0   0% 4 0   0%
python / felis / metadata.py MetaDataBuilder.build_column   0% 17 17 0   0% 6 0   0%
python / felis / metadata.py MetaDataBuilder.build_constraints   0% 5 5 0   0% 4 0   0%
python / felis / metadata.py MetaDataBuilder.build_constraint   0% 21 21 0   0% 10 0   0%
python / felis / metadata.py MetaDataBuilder.build_index   0% 5 5 0   100% 0 0   0%
python / felis / metadata.py MetaDataBuilder.build_indexes   0% 10 10 0   0% 8 0   0%
python / felis / metadata.py create_metadata   0% 10 10 0   0% 6 0   0%
python / felis / metadata.py (no function)   100% 30 0 0   100% 0 0   100%
python / felis / tap_schema.py TableManager.__init__   0% 15 15 0   0% 6 0   0%
python / felis / tap_schema.py TableManager._load_from_yaml   0% 7 7 0   0% 2 0   0%
python / felis / tap_schema.py TableManager._reflect_from_database   0% 6 6 0   100% 0 0   0%
python / felis / tap_schema.py TableManager._apply_extensions   0% 16 16 0   0% 8 0   0%
python / felis / tap_schema.py TableManager.__getitem__   0% 3 3 0   0% 2 0   0%
python / felis / tap_schema.py TableManager.schema   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.metadata   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.get_tap_schema_std_path   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.get_tap_schema_std_resource   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.get_table_names_std   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.get_schema_name_std   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.load_schema_resource   0% 2 2 0   100% 0 0   0%
python / felis / tap_schema.py TableManager._load_schema   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py TableManager._create_table_map   0% 2 2 0   100% 0 0   0%
python / felis / tap_schema.py TableManager._check_tables   0% 2 2 0   0% 2 0   0%
python / felis / tap_schema.py TableManager.initialize_database   0% 3 3 0   100% 0 0   0%
python / felis / tap_schema.py TableManager.select   0% 8 8 0   0% 2 0   0%
python / felis / tap_schema.py DataLoader.__init__   0% 9 9 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader.load   0% 8 8 0   0% 6 0   0%
python / felis / tap_schema.py DataLoader._insert_schemas   0% 2 2 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader._get_table_name   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader._insert_tables   0% 3 3 0   0% 2 0   0%
python / felis / tap_schema.py DataLoader._insert_columns   0% 10 10 0   0% 4 0   0%
python / felis / tap_schema.py DataLoader._get_key   0% 5 5 0   0% 2 0   0%
python / felis / tap_schema.py DataLoader._insert_keys   0% 13 13 0   0% 8 0   0%
python / felis / tap_schema.py DataLoader._generate_all_inserts   0% 6 6 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader._execute_inserts   0% 7 7 0   0% 2 0   0%
python / felis / tap_schema.py DataLoader._compiled_inserts   0% 1 1 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader._print_sql   0% 2 2 0   0% 2 0   0%
python / felis / tap_schema.py DataLoader._write_sql_to_file   0% 4 4 0   0% 4 0   0%
python / felis / tap_schema.py DataLoader._insert   0% 3 3 0   100% 0 0   0%
python / felis / tap_schema.py DataLoader._get_size   0% 10 10 0   0% 6 0   0%
python / felis / tap_schema.py DataLoader._is_indexed   0% 6 6 0   0% 6 0   0%
python / felis / tap_schema.py MetadataInserter.__init__   0% 2 2 0   100% 0 0   0%
python / felis / tap_schema.py MetadataInserter.insert_metadata   0% 10 10 0   0% 2 0   0%
python / felis / tap_schema.py (no function)   100% 68 0 0   100% 0 0   100%
python / felis / tests / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
python / felis / tests / postgresql.py TemporaryPostgresInstance.__init__   0% 2 2 0   100% 0 0   0%
python / felis / tests / postgresql.py TemporaryPostgresInstance.url   0% 1 1 0   100% 0 0   0%
python / felis / tests / postgresql.py TemporaryPostgresInstance.engine   0% 1 1 0   100% 0 0   0%
python / felis / tests / postgresql.py TemporaryPostgresInstance.begin   0% 2 2 0   100% 0 0   0%
python / felis / tests / postgresql.py TemporaryPostgresInstance.print_info   0% 9 9 0   0% 2 0   0%
python / felis / tests / postgresql.py setup_postgres_test_db   0% 8 8 0   0% 2 0   0%
python / felis / tests / postgresql.py (no function)   100% 22 0 0   100% 0 0   100%
python / felis / tests / run_cli.py run_cli   0% 14 14 0   0% 10 0   0%
python / felis / tests / run_cli.py (no function)   100% 5 0 0   100% 0 0   100%
python / felis / types.py FelisType.__init_subclass__   100% 7 0 0   100% 0 0   100%
python / felis / types.py FelisType.felis_type   0% 4 4 0   100% 0 0   0%
python / felis / types.py (no function)   100% 33 0 0   100% 0 0   100%
tests / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
tests / test_cli.py CliTestCase.setUp   0% 5 5 0   0% 2 0   0%
tests / test_cli.py CliTestCase.tearDown   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_invalid_command   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_help   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create_with_echo   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create_with_dry_run   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create_with_ignore_constraints   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_validate   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_validate_with_log_file   0% 6 6 0   0% 4 0   0%
tests / test_cli.py CliTestCase.test_validate_with_id_generation   0% 2 2 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_validate_with_id_generation_error   0% 2 2 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_validate_with_extra_checks   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create_with_initialize_and_drop_error   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_load_tap_schema   0% 3 3 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_load_tap_schema_with_dry_run_and_output_file   0% 6 6 0   0% 4 0   0%
tests / test_cli.py CliTestCase.test_init_tap_schema   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_init_tap_schema_mock   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_init_tap_schema_with_extensions   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_init_tap_schema_with_custom_extensions   0% 5 5 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_diff   0% 3 3 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_diff_database   0% 7 7 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_diff_alembic   0% 3 3 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_diff_error   0% 2 2 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_diff_error_on_change   0% 3 3 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_dump_yaml   0% 2 2 0   100% 0 0   0%
tests / test_cli.py CliTestCase._check_strip_ids   0% 8 8 0   0% 10 0   0%
tests / test_cli.py CliTestCase.test_dump_yaml_with_strip_ids   0% 8 8 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_dump_json   0% 2 2 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_dump_with_dereference_resources_and_sort_columns   0% 18 18 0   0% 2 0   0%
tests / test_cli.py CliTestCase.test_dump_json_with_strip_ids   0% 8 8 0   100% 0 0   0%
tests / test_cli.py CliTestCase._check_columns_sorted   0% 4 4 0   0% 2 0   0%
tests / test_cli.py CliTestCase.test_dump_yaml_with_sort_columns   0% 5 5 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_dump_json_with_sort_columns   0% 5 5 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_dump_with_invalid_file_extension_error   0% 1 1 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_create_and_drop_indexes   0% 4 4 0   100% 0 0   0%
tests / test_cli.py CliTestCase.test_generate_and_load_sql   0% 23 23 0   0% 4 0   0%
tests / test_cli.py ColumnRefsTestCase.setUp   0% 11 11 0   100% 0 0   0%
tests / test_cli.py ColumnRefsTestCase.tearDown   0% 1 1 0   100% 0 0   0%
tests / test_cli.py ColumnRefsTestCase.test_validate_with_column_ref_index_increment   0% 1 1 0   100% 0 0   0%
tests / test_cli.py ColumnRefsTestCase.test_validate_with_column_ref_index_increment_error   0% 1 1 0   100% 0 0   0%
tests / test_cli.py ColumnRefsTestCase.test_load_tap_schema_with_column_refs   0% 2 2 0   100% 0 0   0%
tests / test_cli.py ColumnRefsTestCase.test_load_tap_schema_with_column_ref_index_increment   0% 2 2 0   100% 0 0   0%
tests / test_cli.py (no function)   98% 64 1 0   50% 2 1   97%
tests / test_database_context.py BaseDatabaseContextTest.setUp   0% 4 4 0   100% 0 0   0%
tests / test_database_context.py BaseDatabaseContextTest._create_database_context   0% 1 1 0   100% 0 0   0%
tests / test_database_context.py BaseDatabaseContextTest.test_database_context   0% 20 20 0   0% 6 0   0%
tests / test_database_context.py BaseDatabaseContextTest.test_initialize_is_idempotent   0% 5 5 0   100% 0 0   0%
tests / test_database_context.py BaseDatabaseContextTest.test_drop_is_idempotent   0% 4 4 0   100% 0 0   0%
tests / test_database_context.py SQLiteTestCase.setUp   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py PostgreSQLTestCase.setUp   0% 4 4 0   100% 0 0   0%
tests / test_database_context.py PostgreSQLTestCase.test_missing_schema_name   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py MySQLTestCase.setUp   0% 9 9 0   0% 2 0   0%
tests / test_database_context.py MySQLTestCase.test_missing_schema_name   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py MockTestCase.setUp   0% 2 2 0   100% 0 0   0%
tests / test_database_context.py MockTestCase.test_mock_connection_engine_error   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py DatabaseContextTestCase.test_create_with_bad_url   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py DatabaseContextTestCase.test_create_with_bad_dialect   0% 4 4 0   100% 0 0   0%
tests / test_database_context.py SupportedDialectsTestCase.test_supported_dialects   0% 4 4 0   100% 0 0   0%
tests / test_database_context.py SupportedDialectsTestCase.test_supported_dialect_with_driver   0% 3 3 0   100% 0 0   0%
tests / test_database_context.py SupportedDialectsTestCase.test_unsupported_dialect   0% 5 5 0   100% 0 0   0%
tests / test_database_context.py (no function)   98% 40 1 0   50% 2 1   95%
tests / test_datamodel.py ColumnTestCase.test_validation   0% 36 36 0   100% 0 0   0%
tests / test_datamodel.py ColumnTestCase.test_description   0% 6 6 0   100% 0 0   0%
tests / test_datamodel.py ColumnTestCase.test_values   0% 53 53 0   0% 18 0   0%
tests / test_datamodel.py ColumnTestCase.test_values.default_coldata   0% 1 1 0   100% 0 0   0%
tests / test_datamodel.py ColumnTestCase.test_timestamp   0% 2 2 0   100% 0 0   0%
tests / test_datamodel.py TableTestCase.test_validation   0% 13 13 0   100% 0 0   0%
tests / test_datamodel.py ColumnGroupTestCase.test_validation   0% 26 26 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_base_constraint   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_unique_constraint   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_foreign_key_constraint   0% 19 19 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_check_constraint   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_bad_constraint_type   0% 2 2 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_constraint_column_checks   0% 14 14 0   100% 0 0   0%
tests / test_datamodel.py ConstraintTestCase.test_constraint_column_checks._create_test_schema   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py IndexTestCase.test_index_validation   0% 17 17 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_validation   0% 18 18 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_schema_object_ids   0% 10 10 0   0% 2 0   0%
tests / test_datamodel.py SchemaTestCase.test_check_unique_constraint_names   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_check_unique_index_names   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_model_validate   0% 3 3 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_id_generation   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_get_table_by_column   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_find_object_by_id   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_from_file   0% 9 9 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_from_resource   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py SchemaTestCase.test_find_table_by_name   0% 9 9 0   100% 0 0   0%
tests / test_datamodel.py SchemaVersionTest.test_validation   0% 12 12 0   100% 0 0   0%
tests / test_datamodel.py ValidationFlagsTest.test_check_tap_table_indexes   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ValidationFlagsTest.test_check_tap_principal   0% 6 6 0   100% 0 0   0%
tests / test_datamodel.py ValidationFlagsTest.test_check_description   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py RedundantDatatypesTest.test_mysql_datatypes   0% 36 36 0   100% 0 0   0%
tests / test_datamodel.py RedundantDatatypesTest.test_mysql_datatypes.ColumnGenerator.__init__   0% 4 4 0   100% 0 0   0%
tests / test_datamodel.py RedundantDatatypesTest.test_mysql_datatypes.ColumnGenerator.col   0% 1 1 0   100% 0 0   0%
tests / test_datamodel.py RedundantDatatypesTest.test_precision   0% 2 2 0   100% 0 0   0%
tests / test_datamodel.py SchemaSerializationTest.test_serialization   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.setUp   0% 10 10 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.tearDown   0% 1 1 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource   0% 50 50 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource_missing_column_error   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource_missing_ref_name_error   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource_not_found_error   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource_table_not_found_error   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_schema_resource_bad_uri_error   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_ref_schema_with_indexes   0% 12 12 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_ref_schema_with_foreign_key   0% 11 11 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_ref_schema_serialization   0% 15 15 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_ref_schema_with_dereference_columns   0% 7 7 0   100% 0 0   0%
tests / test_datamodel.py ResourceTestCase.test_tap_column_index_with_overrides   0% 18 18 0   0% 8 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_all_override_fields_exist_on_column   0% 4 4 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_overrides_all   0% 9 9 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_overrides_subset   0% 9 9 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_overrides_default   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_overrides_with_explicit_none_values   0% 8 8 0   0% 2 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_extra_fields_in_overrides   0% 3 3 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_overrides_accept_alias_keys   0% 5 5 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_datatype_deserialize_and_serialize   0% 8 8 0   100% 0 0   0%
tests / test_datamodel.py ColumnOverridesTestCase.test_non_nullable_overrides_data_is_none   0% 1 1 0   100% 0 0   0%
tests / test_datamodel.py (no function)   99% 84 1 0   50% 2 1   98%
tests / test_diff.py TestSchemaDiff._diff   0% 1 1 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_schema_diff   0% 84 84 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_index_diff   0% 16 16 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_print   0% 3 3 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_formatted_print   0% 3 3 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_parse_deepdiff_path   0% 3 3 0   100% 0 0   0%
tests / test_diff.py TestSchemaDiff.test_get_id_error   0% 4 4 0   100% 0 0   0%
tests / test_diff.py TestDatabaseDiff.test_database_diff   0% 14 14 0   100% 0 0   0%
tests / test_diff.py (no function)   100% 15 0 0   100% 0 0   100%
tests / test_import_modules.py (no function)   83% 6 1 0   50% 2 1   75%
tests / test_metadata.py MetaDataTestCase.setUp   0% 2 2 0   100% 0 0   0%
tests / test_metadata.py MetaDataTestCase.test_create_all   0% 54 54 0   0% 18 0   0%
tests / test_metadata.py MetaDataTestCase.test_create_all._sorted_indexes   0% 1 1 0   100% 0 0   0%
tests / test_metadata.py MetaDataTestCase.test_create_all._sorted_constraints   0% 1 1 0   100% 0 0   0%
tests / test_metadata.py MetaDataTestCase.test_builder   0% 33 33 0   0% 22 0   0%
tests / test_metadata.py MetaDataTestCase.test_timestamp   0% 12 12 0   0% 2 0   0%
tests / test_metadata.py MetaDataTestCase.test_ignore_constraints   0% 7 7 0   0% 2 0   0%
tests / test_metadata.py MetaDataTestCase.test_table_name_postfix   0% 6 6 0   0% 2 0   0%
tests / test_metadata.py MetaDataTestCase.test_fk_actions   0% 9 9 0   0% 6 0   0%
tests / test_metadata.py (no function)   95% 20 1 0   50% 2 1   91%
tests / test_postgres.py TestPostgresql.setUpClass   0% 2 2 0   100% 0 0   0%
tests / test_postgres.py TestPostgresql.test_initialize_create_and_drop   0% 22 22 0   0% 2 0   0%
tests / test_postgres.py TestPostgresql.test_create_and_drop_indexes   0% 18 18 0   100% 0 0   0%
tests / test_postgres.py TestPostgresql.test_create_and_drop_indexes.check_indexes_exist   0% 11 11 0   0% 8 0   0%
tests / test_postgres.py (no function)   100% 16 0 0   100% 0 0   100%
tests / test_tap_schema.py TableManagerTestCase.setUp   0% 2 2 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerTestCase.test_create_table_manager   0% 9 9 0   0% 2 0   0%
tests / test_tap_schema.py TableManagerTestCase.test_table_name_postfix   0% 3 3 0   0% 2 0   0%
tests / test_tap_schema.py DataLoaderTestCase.setUp   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py DataLoaderTestCase.tearDown   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py DataLoaderTestCase.test_sqlite   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema.py DataLoaderTestCase.test_sql_output   0% 13 13 0   100% 0 0   0%
tests / test_tap_schema.py DataLoaderTestCase.test_unique_keys   0% 13 13 0   0% 4 0   0%
tests / test_tap_schema.py DataLoaderTestCase.test_select_with_filter   0% 7 7 0   100% 0 0   0%
tests / test_tap_schema.py _find_row   0% 4 4 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaSqliteSetup.__init__   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaSqliteSetup.schema   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaSqliteSetup.mgr   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaSqliteSetup.metadata   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.setUp   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_schemas   0% 14 14 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_tables   0% 17 17 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_columns   0% 58 58 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_keys   0% 16 16 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_key_columns   0% 14 14 0   100% 0 0   0%
tests / test_tap_schema.py TapSchemaDataTest.test_bad_table_name   0% 2 2 0   100% 0 0   0%
tests / test_tap_schema.py ForceUnboundArraySizeTest.setUp   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py ForceUnboundArraySizeTest.test_force_unbounded_arraysize   0% 12 12 0   0% 4 0   0%
tests / test_tap_schema.py CompositeKeysTestCase.setUp   0% 12 12 0   100% 0 0   0%
tests / test_tap_schema.py CompositeKeysTestCase.test_keys   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py CompositeKeysTestCase.test_key_columns   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py ColumnRefsTestCase.setUp   0% 11 11 0   100% 0 0   0%
tests / test_tap_schema.py ColumnRefsTestCase.test_column_refs   0% 19 19 0   0% 8 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.setUp   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.tearDown   0% 1 1 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_applied   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_column_count   0% 8 8 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_with_data_loader   0% 13 13 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_invalid_extensions_file   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_empty_extensions   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_with_null_table_extensions   0% 8 8 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_invalid_column_missing_name   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_column_id_auto_generation   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_column_id_preserved   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_multiple_tables_extended   0% 14 14 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_nonexistent_table_skipped   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_column_properties_preserved   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_apply_schema_to_metadata_true   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_apply_schema_to_metadata_false   0% 4 4 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_with_table_name_postfix   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_metadata_builder_called   0% 7 7 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_preserve_original_columns   0% 6 6 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_no_extensions_path_provided   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_path_empty_string   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py TableManagerExtensionsTestCase.test_extensions_file_not_found   0% 3 3 0   100% 0 0   0%
tests / test_tap_schema.py (no function)   99% 76 1 0   50% 2 1   97%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.setUp   0% 6 6 0   0% 2 0   0%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.test_create_metadata   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.test_reflect_database   0% 29 29 0   100% 0 0   0%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.test_nonstandard_names   0% 12 12 0   0% 2 0   0%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.test_bad_engine   0% 5 5 0   100% 0 0   0%
tests / test_tap_schema_postgres.py TestTapSchemaPostgresql.tearDown   0% 2 2 0   100% 0 0   0%
tests / test_tap_schema_postgres.py (no function)   96% 27 1 0   50% 2 1   93%
Total     29% 4012 2836 23   1% 758 9   25%

No items found using the specified filter.