Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import path from 'path';
import { render } from '@asyncapi/generator-react-sdk';
import { Parser, fromFile } from '@asyncapi/parser';
import { getQueryParams } from '@asyncapi/generator-helpers';
import { ConnectorDependencies } from '../../components/dependencies/ConnectorDependencies.js';

const parser = new Parser();
const asyncapiFilePath = path.resolve(__dirname, '../../../../test/__fixtures__/asyncapi-websocket-components.yml');

describe('ConnectorDependencies component (integration with AsyncAPI document)', () => {
let parsedAsyncAPIDocument;
let channels;
let queryParams;

beforeAll(async () => {
const parseResult = await fromFile(parser, asyncapiFilePath).parse();
parsedAsyncAPIDocument = parseResult.document;
channels = parsedAsyncAPIDocument.channels();
queryParams = getQueryParams(channels);
});

test('renders base dependencies without query param imports when queryParams is null', () => {
const result = render(<ConnectorDependencies queryParams={null} />);
expect(result.trim()).toMatchSnapshot();
});

test('renders base dependencies without query param imports when queryParams is undefined', () => {
const result = render(<ConnectorDependencies />);
expect(result.trim()).toMatchSnapshot();
});

test('renders dependencies with query param imports when queryParams is empty Map', () => {
const emptyMap = new Map();
const result = render(<ConnectorDependencies queryParams={emptyMap} />);
expect(result.trim()).toMatchSnapshot();
});

test('renders dependencies with query param imports when queryParams has data from fixture', () => {
const result = render(<ConnectorDependencies queryParams={queryParams} />);
expect(result.trim()).toMatchSnapshot();
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`ConnectorDependencies component (integration with AsyncAPI document) renders base dependencies without query param imports when queryParams is null 1`] = `
"package com.asyncapi;

import io.quarkus.websockets.next.WebSocketConnector;
import io.quarkus.websockets.next.WebSocketClientConnection;
import jakarta.inject.Inject;
import jakarta.inject.Singleton;
import jakarta.annotation.PostConstruct;
import io.quarkus.logging.Log;
import io.quarkus.runtime.Startup;"
`;

exports[`ConnectorDependencies component (integration with AsyncAPI document) renders base dependencies without query param imports when queryParams is undefined 1`] = `
"package com.asyncapi;

import io.quarkus.websockets.next.WebSocketConnector;
import io.quarkus.websockets.next.WebSocketClientConnection;
import jakarta.inject.Inject;
import jakarta.inject.Singleton;
import jakarta.annotation.PostConstruct;
import io.quarkus.logging.Log;
import io.quarkus.runtime.Startup;"
`;

exports[`ConnectorDependencies component (integration with AsyncAPI document) renders dependencies with query param imports when queryParams has data from fixture 1`] = `
"package com.asyncapi;

import io.quarkus.websockets.next.WebSocketConnector;
import io.quarkus.websockets.next.WebSocketClientConnection;
import jakarta.inject.Inject;
import jakarta.inject.Singleton;
import jakarta.annotation.PostConstruct;
import io.quarkus.logging.Log;
import io.quarkus.runtime.Startup;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import java.net.URI;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;"
`;

exports[`ConnectorDependencies component (integration with AsyncAPI document) renders dependencies with query param imports when queryParams is empty Map 1`] = `
"package com.asyncapi;

import io.quarkus.websockets.next.WebSocketConnector;
import io.quarkus.websockets.next.WebSocketClientConnection;
import jakarta.inject.Inject;
import jakarta.inject.Singleton;
import jakarta.annotation.PostConstruct;
import io.quarkus.logging.Log;
import io.quarkus.runtime.Startup;
import org.eclipse.microprofile.config.inject.ConfigProperty;
import java.net.URI;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;"
`;
Loading