{"id":26895993,"url":"https://github.com/ashubham/custody","last_synced_at":"2025-05-12T20:18:21.846Z","repository":{"id":57182914,"uuid":"86665918","full_name":"ashubham/custody","owner":"ashubham","description":"E2E testing for chatbots","archived":false,"fork":false,"pushed_at":"2018-01-22T18:40:23.000Z","size":590,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-11T13:46:14.148Z","etag":null,"topics":["bots","chatbot","e2e-testing","test","test-automation","test-framework"],"latest_commit_sha":null,"homepage":"https://ashubham.github.io/custody","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ashubham.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-30T06:14:54.000Z","updated_at":"2019-06-07T09:04:31.000Z","dependencies_parsed_at":"2022-09-11T23:51:15.468Z","dependency_job_id":null,"html_url":"https://github.com/ashubham/custody","commit_stats":null,"previous_names":["ashubham/appraisal"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashubham%2Fcustody","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashubham%2Fcustody/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashubham%2Fcustody/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashubham%2Fcustody/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashubham","download_url":"https://codeload.github.com/ashubham/custody/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253576229,"owners_count":21930165,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bots","chatbot","e2e-testing","test","test-automation","test-framework"],"created_at":"2025-04-01T02:59:21.498Z","updated_at":"2025-05-12T20:18:21.810Z","avatar_url":"https://github.com/ashubham.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Custody\n\u003c!--{h1:.massive-header.-with-tagline}--\u003e\n\u003e of naughty chatbots!\n\n\u003ca href=\"http://ashubham.github.io/custody\"\u003e\n    \u003cimg class=\"logo\" src=\"https://raw.githubusercontent.com/ashubham/custody/master/img/handcuffs.png\" align=\"right\" height=\"80px\" alt=\"Custody logo\" /\u003e\n\u003c/a\u003e\n\nE2E test framework for your conversational bot. \u003cbr\u003e\nSupports Messenger, Slack, more ? Bots are everywhere, and they need to behave!\n\n[![Build Status](https://travis-ci.org/ashubham/custody.svg?branch=master)](https://travis-ci.org/ashubham/custody)\n[![npm version](https://badge.fury.io/js/custody.svg)](https://badge.fury.io/js/custody)\n[![Coverage Status](https://coveralls.io/repos/github/ashubham/custody/badge.svg?branch=master)](https://coveralls.io/github/ashubham/custody?branch=master)\n[![Dependency status](http://img.shields.io/david/docpress/docpress.svg?style=flat-square)](https://david-dm.org/docpress/docpress)\n[![Dev Dependencies Status](http://img.shields.io/david/dev/docpress/docpress.svg?style=flat-square)](https://david-dm.org/docpress/docpress#info=devDependencies)\n\n## Getting Started\n-------------------\n\nVisit [Custody Website](http://ashubham.github.io/custody) for all documentation.\n\nFor a quick setup and run:\n - Follow the [Tutorial](http://ashubham.github.io/custody/start/tutorial.html)\n - [API Reference](https://ashubham.github.io/custody/reference/api/postMessage.html)\n\n\n## Installation\n\n`$ npm i -g custody`\n\n ## Basic Usage\n -------------------\n\n`$ custody --platform=slack --framework=jasmine --token=xoxp-123-123 \n    --specs=test/**/* --defaultRecipient=C928721`\n\n```javascript\n// test/sample.tests.js\ndescribe('This is a sample test', () =\u003e {\n    it('Sample test 1', () =\u003e {\n        csty.postMessage('Hello?');\n        csty.waitForResponseToBe('World!');\n        expect(csty.getLastMessage()).toEqual(\n            jasmine.objectContaining({\n                payload: {\n                    body: 'World!'\n                }\n            })\n        );\n    });\n});\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashubham%2Fcustody","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashubham%2Fcustody","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashubham%2Fcustody/lists"}