Skip to content

Commit

Permalink
test(unit): add tests for createStrapiSDK function
Browse files Browse the repository at this point in the history
  • Loading branch information
Convly committed Dec 16, 2024
1 parent 16ac1bb commit aeb5759
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions tests/unit/index.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import { createStrapiSDK, StrapiSDKInitializationError, StrapiSDKValidationError } from '../../src';
import { StrapiSDK } from '../../src/sdk';

import type { StrapiSDKConfig } from '../../src/sdk';

describe('createStrapiSDK', () => {
it('should create an SDK instance with valid configuration', () => {
// Arrange
const config = { baseURL: 'https://api.example.com' } satisfies StrapiSDKConfig;

// Act
const sdkInstance = createStrapiSDK(config);

// Assert
expect(sdkInstance).toBeInstanceOf(StrapiSDK);
expect(sdkInstance).toHaveProperty('baseURL', config.baseURL);
});

it('should throw an error for an invalid baseURL', () => {
// Arrange
const config = { baseURL: 'invalid-url' } satisfies StrapiSDKConfig;

// Act & Assert
expect(() => createStrapiSDK(config)).toThrow(StrapiSDKInitializationError);
});

it('should throw an error if auth configuration is invalid', () => {
// Arrange
const config = {
baseURL: 'https://api.example.com',
auth: {
strategy: 'api-token',
options: { token: '' }, // Invalid token
},
} satisfies StrapiSDKConfig;

// Act & Assert
expect(() => createStrapiSDK(config)).toThrow(StrapiSDKValidationError);
});
});

0 comments on commit aeb5759

Please sign in to comment.