2021-04-26 20:07:00 +02:00
|
|
|
#coding:utf-8
|
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
"""
|
|
|
|
ID: intfunc.count-02
|
|
|
|
TITLE: COUNT
|
|
|
|
DESCRIPTION: Count of Not Null values and count of rows and count of distinct values
|
|
|
|
FBTEST: functional.intfunc.count.02
|
|
|
|
"""
|
2021-04-26 20:07:00 +02:00
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
import pytest
|
|
|
|
from firebird.qa import *
|
2021-04-26 20:07:00 +02:00
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
init_script = """CREATE TABLE test( id INTEGER);
|
2021-04-26 20:07:00 +02:00
|
|
|
INSERT INTO test VALUES(0);
|
|
|
|
INSERT INTO test VALUES(0);
|
|
|
|
INSERT INTO test VALUES(null);
|
|
|
|
INSERT INTO test VALUES(null);
|
|
|
|
INSERT INTO test VALUES(null);
|
|
|
|
INSERT INTO test VALUES(1);
|
|
|
|
INSERT INTO test VALUES(1);
|
|
|
|
INSERT INTO test VALUES(1);
|
|
|
|
INSERT INTO test VALUES(1);
|
|
|
|
"""
|
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
db = db_factory(init=init_script)
|
2021-04-26 20:07:00 +02:00
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
act = isql_act('db', "SELECT COUNT(*), COUNT(ID), COUNT(DISTINCT ID) FROM test;")
|
2021-04-26 20:07:00 +02:00
|
|
|
|
2022-02-04 19:05:19 +01:00
|
|
|
expected_stdout = """ COUNT COUNT COUNT
|
2021-04-26 20:07:00 +02:00
|
|
|
===================== ===================== =====================
|
|
|
|
9 6 2
|
|
|
|
"""
|
|
|
|
|
|
|
|
@pytest.mark.version('>=3.0')
|
2022-02-04 19:05:19 +01:00
|
|
|
def test_1(act: Action):
|
|
|
|
act.expected_stdout = expected_stdout
|
|
|
|
act.execute()
|
|
|
|
assert act.clean_stdout == act.clean_expected_stdout
|