Files
threshold/internal/db/sqltest/tests/session/invalid_state_transition.sql
T
429247f407 [COMPLIANCE] Update Copyright Headers (#6282)
* [COMPLIANCE] Update Copyright and License Headers

* chore: make gen to generate files with copyright headers

* chore: update missed copyright headers

---------

Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
Co-authored-by: Justin Nguyen <justin.nguyen@hashicorp.com>
2026-01-28 11:05:07 -06:00

46 lines
2.0 KiB
PL/PgSQL

-- Copyright IBM Corp. 2020, 2025
-- SPDX-License-Identifier: BUSL-1.1
begin;
select plan(12);
-- Ensure session state table is populated
select is(count(*), 1::bigint) from session_state where session_id = 's1_____clare' and state='pending';
select is(count(*), 1::bigint) from session_state where session_id = 's1_____cindy' and state='terminated';
select is(count(*), 1::bigint) from session_state where session_id = 's1_____ciara' and state='canceling';
select is(count(*), 1::bigint) from session_state where session_id = 's1_____carly' and state='active';
-- Invalid duplicate state
select throws_ok($$ insert into session_state ( session_id, state )
values ('s1_____clare','pending')$$);
-- Invalid state transition from terminated to pending
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______cindy','pending')$$);
-- Invalid state transition from terminated to active
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______cindy','active')$$);
-- Invalid state transition from terminated to canceling
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______cindy','canceling')$$);
-- Invalid state transition from terminated to terminated
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______cindy','terminated')$$);
-- Invalid state transition from active to pending
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______carly','pending')$$);
-- Invalid state transition from canceling to pending
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______ciara','pending')$$);
-- Invalid state transition from canceling to active
select throws_ok($$ insert into session_state ( session_id, state)
values ('s1______ciara','active')$$);
select * from finish();
rollback;