diff --git a/tests/integration/nodes.test.ts b/tests/integration/nodes.test.ts index f7170bb..5f1a9eb 100644 --- a/tests/integration/nodes.test.ts +++ b/tests/integration/nodes.test.ts @@ -1,5 +1,5 @@ import { describe, expect, test } from 'vitest'; -import { getNode, getRuntimeClient, HS_VERSIONS } from './setup/env'; +import { getNode, getRuntimeClient, getIsAtLeast, HS_VERSIONS } from './setup/env'; describe.sequential.for(HS_VERSIONS)('Headscale %s: Users', (version) => { let workingNodeId: string; @@ -41,13 +41,15 @@ describe.sequential.for(HS_VERSIONS)('Headscale %s: Users', (version) => { }); test('nodes can be reassigned to another user', async () => { - const client = await getRuntimeClient(version); - const user = await client.createUser('node-reassign@'); + if (! getIsAtLeast("0.28.0")) { + const client = await getRuntimeClient(version); + const user = await client.createUser('node-reassign@'); - await client.setNodeUser(workingNodeId, user.id); - const reassignedNode = await client.getNode(workingNodeId); - expect(reassignedNode).toBeDefined(); - expect(reassignedNode.user.name).toBe(user.name); + await client.setNodeUser(workingNodeId, user.id); + const reassignedNode = await client.getNode(workingNodeId); + expect(reassignedNode).toBeDefined(); + expect(reassignedNode.user.name).toBe(user.name); + } }); test('nodes can be expired', async () => { diff --git a/tests/integration/setup/env.ts b/tests/integration/setup/env.ts index 1185128..b0df62f 100644 --- a/tests/integration/setup/env.ts +++ b/tests/integration/setup/env.ts @@ -43,6 +43,11 @@ export async function getRuntimeClient(version: Version) { return bootstrap.getRuntimeClient(env.apiKey); } +export async function getIsAtLeast(version: Version) { + const { env, bootstrap } = await ensureVersion(version); + return bootstrap.clientHelpers.isAtleast; +} + export async function getNode(version: Version) { const { tailscaleNode } = await ensureVersion(version); return {