diff --git a/frontend/src/components/Config/CreateTargetDialog.test.tsx b/frontend/src/components/Config/CreateTargetDialog.test.tsx
index 288c9478bb..70fa3ffb3d 100644
--- a/frontend/src/components/Config/CreateTargetDialog.test.tsx
+++ b/frontend/src/components/Config/CreateTargetDialog.test.tsx
@@ -398,16 +398,20 @@ describe("CreateTargetDialog", () => {
});
});
- it("should display pyrit_conf hint text", () => {
+ it("should display supported target initializer guidance", () => {
render(
);
+ expect(screen.getByText("target", { selector: "code" })).toBeInTheDocument();
expect(
- screen.getByText(/auto-populated by adding an initializer/)
+ screen.getByText(/registers available prompt targets from endpoints/i)
).toBeInTheDocument();
+ expect(
+ screen.queryByText("airt", { selector: "code" })
+ ).not.toBeInTheDocument();
});
it("should render .pyrit_conf_example as an accessible link", () => {
@@ -423,6 +427,7 @@ describe("CreateTargetDialog", () => {
"href",
"https://github.com/microsoft/PyRIT/blob/main/.pyrit_conf_example"
);
+ expect(link).toHaveAttribute("rel", "noopener noreferrer");
});
it("should show field validation errors when submitting form without endpoint", async () => {
diff --git a/frontend/src/components/Config/CreateTargetDialog.tsx b/frontend/src/components/Config/CreateTargetDialog.tsx
index a3d30f8565..3f148d837b 100644
--- a/frontend/src/components/Config/CreateTargetDialog.tsx
+++ b/frontend/src/components/Config/CreateTargetDialog.tsx
@@ -712,10 +712,15 @@ export default function CreateTargetDialog({ open, onClose, onCreated, existingT
{!isRoundRobin && (
diff --git a/frontend/src/components/Config/TargetConfig.test.tsx b/frontend/src/components/Config/TargetConfig.test.tsx
index 8aed790042..70a9ced2ca 100644
--- a/frontend/src/components/Config/TargetConfig.test.tsx
+++ b/frontend/src/components/Config/TargetConfig.test.tsx
@@ -118,6 +118,16 @@ describe("TargetConfig", () => {
await waitFor(() => {
expect(screen.getByText("No Targets Configured")).toBeInTheDocument();
});
+ expect(screen.getByText("target", { selector: "code" })).toBeInTheDocument();
+ expect(
+ screen.getByText(/register available prompt targets automatically/i)
+ ).toBeInTheDocument();
+ expect(
+ screen.queryByText("airt", { selector: "code" })
+ ).not.toBeInTheDocument();
+ expect(
+ screen.getByRole("link", { name: ".pyrit_conf_example" })
+ ).toHaveAttribute("rel", "noopener noreferrer");
});
it(
diff --git a/frontend/src/components/Config/TargetConfig.tsx b/frontend/src/components/Config/TargetConfig.tsx
index 6b496954f7..f40a09d3cc 100644
--- a/frontend/src/components/Config/TargetConfig.tsx
+++ b/frontend/src/components/Config/TargetConfig.tsx
@@ -120,9 +120,14 @@ export default function TargetConfig({ activeTarget, onSetActiveTarget }: Target
Add a target manually, or configure an initializer in your ~/.pyrit/.pyrit_conf file
to auto-populate targets from your .env and .env.local files.
- For example, add airt to the initializers list to register
- Azure OpenAI targets automatically. See the{' '}
-
+ For example, add target to the initializers list to register
+ available prompt targets automatically. See the{' '}
+
.pyrit_conf_example
{' '}
for details.