blob: 43ffaa76e1d24dc015dd89b413e01cb69e5dc3db (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe ClickHouse::SyncCursor, feature_category: :value_stream_management, click_house: {} do
def value
ClickHouse::SyncCursor.cursor_for(:my_table)
end
context 'when cursor is empty' do
it 'returns the default value: 0' do
expect(value).to eq(0)
end
end
context 'when cursor is present' do
it 'updates and returns the current cursor value' do
described_class.update_cursor_for(:my_table, 1111)
expect(value).to eq(1111)
described_class.update_cursor_for(:my_table, 2222)
expect(value).to eq(2222)
end
end
context 'when updating a different cursor' do
it 'does not affect the other cursors' do
described_class.update_cursor_for(:other_table, 1111)
expect(value).to eq(0)
end
end
end
|