Skip to content

Instantly share code, notes, and snippets.

@bgadrian
Created September 20, 2023 08:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bgadrian/b7d041cb9e44d415a98d0cb9da2bfcf6 to your computer and use it in GitHub Desktop.
Save bgadrian/b7d041cb9e44d415a98d0cb9da2bfcf6 to your computer and use it in GitHub Desktop.
mock client
// Static strings.
const UNEXPECTED_ERROR_MESSAGE = "An unexpected error occurred while processing your request.";
//define a type of Config
class Client {
constructor(config) {
this.dry_run = config.dry_run;
this.api_key = config.api_key;
this.base_path = config.base_path;
}
search(prompt) {
if (this.dry_run){
let random = Math.floor(Math.random() * 1000);
if (random >666) {
return Promise.reject(UNEXPECTED_ERROR_MESSAGE);
}
if (random > 333) {
return Promise.resolve(large_lorem);
}
return Promise.resolve("Hello World")
}
throw new Error("Not implemented");
}
}
let large_lorem = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas dignissim nec velit a porttitor. Nam egestas libero sit amet neque tempus dictum. Duis quis magna est. Sed cursus sapien eget lorem mattis, pellentesque facilisis quam viverra. Nunc dignissim turpis sit amet orci commodo dictum. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Cras maximus, odio sed placerat ornare, nisi lorem finibus lorem, quis placerat nunc ex et ante. Proin egestas dolor dolor, venenatis tempor urna pretium eu. Pellentesque consequat auctor lectus non sodales. Donec eu ligula venenatis, facilisis nibh id, molestie ligula.\n" +
"\n" +
"Maecenas quis nisi porttitor, venenatis massa a, tincidunt metus. Pellentesque facilisis leo odio. Nam hendrerit magna in leo congue, eget volutpat ipsum iaculis. Sed non justo dignissim, vestibulum mi non, congue augue. Duis vulputate, erat id feugiat lacinia, lectus massa bibendum sapien, sit amet pulvinar dui est sit amet turpis. Nam sagittis porttitor dapibus. Integer felis nisl, commodo sed nisi vitae, rutrum tristique ante. In lacinia consectetur maximus. Phasellus tristique sed ex eget lacinia. Morbi et neque justo. Maecenas maximus ipsum sit amet justo tincidunt venenatis. Suspendisse malesuada leo vitae porta vestibulum. Nam ac sollicitudin tellus. Phasellus eget elit enim. Phasellus euismod sem mi, gravida dictum massa feugiat eu.\n" +
"\n" +
"Nulla tempor neque venenatis, facilisis arcu blandit, hendrerit est. Nulla at ante elementum, malesuada est ac, ornare libero. Nulla id lacus placerat, mollis lorem nec, congue nulla. Integer vitae placerat magna. Donec ut nisi sit amet libero vestibulum faucibus. Duis risus odio, varius quis efficitur vulputate, molestie eget purus. Quisque erat metus, posuere id ultrices eu, hendrerit ac magna. Proin turpis neque, finibus vel pretium eget, condimentum vehicula neque. Pellentesque sagittis, nisi nec maximus venenatis, neque erat mollis quam, vitae ullamcorper turpis felis rutrum orci.\n" +
"\n" +
"Aenean eget ultricies enim, eu porta nulla. Quisque et leo velit. Quisque bibendum felis vel massa viverra suscipit. Curabitur sagittis gravida diam eget euismod. Aliquam laoreet, purus vitae varius tincidunt, massa ligula egestas enim, vel suscipit ligula orci ac mi. Aliquam fringilla eget urna quis auctor. Quisque ac velit quis ipsum dapibus iaculis sed quis justo. Sed ultricies tincidunt nibh nec tristique.\n" +
"\n" +
"Maecenas vitae eros luctus, suscipit enim vitae, euismod justo. Proin eleifend dictum risus. Nulla eget libero neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Maecenas nibh tortor, faucibus mollis accumsan a, laoreet porta velit. Donec eget placerat purus. Vivamus sed blandit ligula. Curabitur rutrum tortor purus, rutrum posuere justo tempor eu."
export default Client;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment