PageSourceSearch

https://docs-pactflow-preview.netlify.app/assets/js/52eae466.2eee687d.js

js docs-pactflow-preview.netlify.app collected 2026-10-03 10:42:21 UTC 5,453 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkpartners=self.webpackChunkpartners||[]).push([[27123],{15680:(e,t,r)=>{r.d(t,{xA:()=>u,yg:()=>g});var n=r(96540);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),p=l(r),f=a,g=p["".concat(c,".").concat(f)]||p[f]||d[f]||o;return r?n.createElement(g,i(i({ref:t},u),{},{components:r})):n.createElement(g,i({ref:t},u))}));function g(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[p]="string"==typeof e?e:a,i[1]=s;for(var l=2;l<o;l++)i[l]=r[l];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}f.displayName="MDXCreateElement"},86051:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>l});var n=r(58168),a=(r(96540),r(15680));const o={title:"Test Generation featuring HaloAI",sidebar_label:"Introduction"},i=void 0,s={unversionedId:"docs/ai/index",id:"docs/ai/index",title:"Test Generation featuring HaloAI",description:"PactFlow's Test Generation feature, is an AI-powered capability designed to help users quickly generate Pact tests. By providing access to source code, OpenAPI descriptions, or traffic capture data, it reduces the time and effort needed to create and maintain contract tests.",source:"@site/docs/docs/ai/index.md",sourceDirName:"docs/ai",slug:"/docs/ai/",permalink:"/docs/ai/",draft:!1,editUrl:"https://github.com/pactflow/docs.pactflow.io/edit/master/website/docs/docs/ai/index.md",tags:[],version:"current",lastUpdatedBy:"Matt Fellows",lastUpdatedAt:1756949105,formattedLastUpdatedAt:"Sep 4, 2025",frontMatter:{title:"Test Generation featuring HaloAI",sidebar_label:"Introduction"},sidebar:"docs",previous:{title:"Environments",permalink:"/docs/ui-old/settings/environments"},next:{title:"Quick Start",permalink:"/docs/ai/quick-start"}},c={},l=[{value:"Features",id:"features",level:2}],u={toc:l},p="wrapper";function d(e){let{components:t,...r}=e;return(0,a.yg)(p,(0,n.A)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,a.yg)("p",null,"PactFlow's Test Generation feature, is an AI-powered capability designed to help users quickly generate Pact tests. By providing access to source code, OpenAPI descriptions, or traffic capture data, it reduces the time and effort needed to create and maintain contract tests."),(0,a.yg)("div",{style:{textAlign:"center"}},(0,a.yg)("img",{src:"/img/mcp2.gif",width:"1024"}),(0,a.yg)("p",{style:{marginTop:"-25px",fontStyle:"italic",fontSize:"90%"}},"PactFlow AI with Copilot using MCP integration. Watch the ",(0,a.yg)("a",{href:"https://www.youtube.com/watch?v=VNe_Y6FcBqA&"},"full video \u2192"))),(0,a.yg)("h2",{id:"features"},"Features"),(0,a.yg)("p",null,"PactFlow AI includes a suite of features to improve the efficiency and quality of your contract tests:"),(0,a.yg)("ul",null,(0,a.yg)("li",{parentName:"ul"},"Generating Pact tests using various combinations of OpenAPI descriptions, code, or request-response pairs"),(0,a.yg)("li",{parentName:"ul"},"Customizable prompts and test templates to tailor output to your specific needs"),(0,a.yg)("li",{parentName:"ul"},"Seamless integration with PactFlow's Role-based Access Controls feature, enabling you to enforce and manage organizational policies"),(0,a.yg)("li",{parentName:"ul"},"Code review (beta), enabling you to evaluate the quality of existing Pact tests and suggest best-practice improvements")),(0,a.yg)("p",null,"PactFlow AI is available as a CLI or MCP server, and supports the following programming languages:"),(0,a.yg)("ul",null,(0,a.yg)("li",{parentName:"ul"},"Java and Kotlin"),(0,a.yg)("li",{parentName:"ul"},"TypeScript / JavaScript"),(0,a.yg)("li",{parentName:"ul"},".NET"),(0,a.yg)("li",{parentName:"ul"},"Golang"),(0,a.yg)("li",{parentName:"ul"},"PHP"),(0,a.yg)("li",{parentName:"ul"},"Swift"),(0,a.yg)("li",{parentName:"ul"},"Python (coming soon)")))}d.isMDXComponent=!0}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.