|
1 | 1 | local fio = require('fio') |
2 | 2 |
|
3 | 3 | local t = require('luatest') |
| 4 | +local luatest_capture = require('luatest.capture') |
4 | 5 |
|
5 | 6 | local helpers = require('test.helper') |
6 | 7 |
|
@@ -1629,3 +1630,31 @@ pgroup.test_call_upsert_object_many_wrong_option = function(g) |
1629 | 1630 | t.assert_str_contains(errs[1].err, |
1630 | 1631 | "Invalid opts.vshard_router table value, a vshard router instance has been expected") |
1631 | 1632 | end |
| 1633 | + |
| 1634 | +pgroup.before_test('test_call_len_by_space_id_with_stats', function(g) |
| 1635 | + g.router:eval('crud.cfg{stats = true}') |
| 1636 | +end) |
| 1637 | + |
| 1638 | +pgroup.test_call_len_by_space_id_with_stats = function(g) |
| 1639 | + local capture = luatest_capture:new() |
| 1640 | + capture:enable() |
| 1641 | + |
| 1642 | + local result, err = g:call_router_opts2('len', 542, {vshard_router = 'customers'}) |
| 1643 | + t.assert_equals(err, nil) |
| 1644 | + t.assert_equals(result, 2) |
| 1645 | + |
| 1646 | + local captured = helpers.fflush_main_server_stdout(g.cluster, capture) |
| 1647 | + capture:disable() |
| 1648 | + |
| 1649 | + t.assert_str_contains(captured, |
| 1650 | + "Using space id in crud.len and custom vshard_router is not supported by statistics.") |
| 1651 | + |
| 1652 | + local result, err = g.router:call('crud.stats') |
| 1653 | + t.assert_equals(err, nil) |
| 1654 | + t.assert_type(result.spaces["542"], 'table') |
| 1655 | + t.assert_equals(result.spaces["542"]["len"]["ok"]["count"], 1) |
| 1656 | +end |
| 1657 | + |
| 1658 | +pgroup.after_test('test_call_len_by_space_id_with_stats', function(g) |
| 1659 | + g.router:eval('crud.cfg{stats = false}') |
| 1660 | +end) |
0 commit comments