{"id":39966116,"url":"https://github.com/yratanov/ember-page-object-asserts","last_synced_at":"2026-01-18T21:36:08.216Z","repository":{"id":37938330,"uuid":"240664948","full_name":"yratanov/ember-page-object-asserts","owner":"yratanov","description":"QUnit asserts for https://github.com/san650/ember-cli-page-object","archived":false,"fork":false,"pushed_at":"2023-01-23T02:23:28.000Z","size":1275,"stargazers_count":2,"open_issues_count":10,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-09T05:31:11.098Z","etag":null,"topics":["assertions","page-object","qunit"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/yratanov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-15T07:42:43.000Z","updated_at":"2022-02-13T22:29:56.000Z","dependencies_parsed_at":"2023-02-12T19:46:11.018Z","dependency_job_id":null,"html_url":"https://github.com/yratanov/ember-page-object-asserts","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/yratanov/ember-page-object-asserts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yratanov%2Fember-page-object-asserts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yratanov%2Fember-page-object-asserts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yratanov%2Fember-page-object-asserts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yratanov%2Fember-page-object-asserts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yratanov","download_url":"https://codeload.github.com/yratanov/ember-page-object-asserts/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yratanov%2Fember-page-object-asserts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28551202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T20:59:07.572Z","status":"ssl_error","status_checked_at":"2026-01-18T20:59:02.799Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["assertions","page-object","qunit"],"created_at":"2026-01-18T21:36:07.590Z","updated_at":"2026-01-18T21:36:08.211Z","avatar_url":"https://github.com/yratanov.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"ember-page-object-asserts\n==============================================================================\n\n[![TravisCI Build Status][travis-badge]][travis-badge-url]\n[![codecov](https://codecov.io/gh/yratanov/ember-page-object-asserts/branch/master/graph/badge.svg)](https://codecov.io/gh/yratanov/ember-page-object-asserts)\n[![Maintainability](https://api.codeclimate.com/v1/badges/2b8436017d28227f08ce/maintainability)](https://codeclimate.com/github/yratanov/ember-page-object-asserts/maintainability)\n[![Dependabot enabled](https://img.shields.io/badge/dependabot-enabled-blue.svg?logo=dependabot)](https://dependabot.com/)\n\n[travis-badge]: https://travis-ci.com/yratanov/ember-page-object-asserts.svg?branch=master\n[travis-badge-url]: https://travis-ci.org/yratanov/ember-page-object-asserts\n\nAdds QUnit asserts for [ember-cli-page-object](https://github.com/san650/ember-cli-page-object) to make test errors more user-friendly and make code shorter.\n\n\nWhy?\n------------------------------------------------------------------------------\n\nUser-friendly messages and simpler syntax:\n\n```js\nconst page = create({\n  link: {\n    scope: 'a',\n    href: attribute('href'),\n    isHighlighted: hasClass('highlighted'),\n  },\n});\n\nassert.po(page.element).text.is(\"test\"); //message 'page.element: text is \"text\"'\nassert.po(page.link).href.is('google.com'); //message 'page.link: href is \"google.com\"'\nassert.po(page.link).href.includes('google.com'); //message 'page.link: href includes \"google.com\"'\nassert.po(page.link).isHighlighted(); //message 'page.link: is highlighted'\nassert.po(page.input).isPresent();  //message 'page.input: is present'\n``` \n\n\nCompatibility\n------------------------------------------------------------------------------\n\n* Ember.js v2.18 or above\n* Ember CLI v2.13 or above\n* Node.js v8 or above\n\n\nInstallation\n------------------------------------------------------------------------------\n\n```\nember install ember-page-object-asserts\n```\n\n\nUsage\n------------------------------------------------------------------------------\n\nImport new assert in your `tests/test-helper.js` file:\n```js\nimport { addPoAssert } from 'ember-page-object-asserts';\n\naddPoAssert();\n\nsetApplication(Application.create(config.APP));\n```\n\n\n#### Built-in asserts\n\n##### is/isNot\n\n```js\nassert.po(page.element).text.is(\"test\");\nassert.po(page.element).text.isNot(\"test\");\nassert.po(page.input).value.is('test');\n```\n\n##### includes/doesNotInclude\n\n```js\nassert.po(page.element).text.includes(\"test\");\nassert.po(page.element).text.doesNotInclude(\"test\");\n```\n\n##### isPresent/isHidden\n\n```js\nassert.po(page.input).isPresent();\nassert.po(page.input).isHidden();\n```\n\n##### Collections\n\n```js\nconst page = create({\n  list: collection('li')\n});\n\nassert.po(page.list).length.is(3);\n```\n\n##### Properties as asserts\n\n```js\nconst page = create({\n  link: {\n    isHighlighted: hasClass('highlighted'),\n  },\n});\n\nassert.po(page.list).isHighlighted();\nassert.po(page.list).isHighlighted(false);\n```\n\n\n\nContributing\n------------------------------------------------------------------------------\n\nSee the [Contributing](CONTRIBUTING.md) guide for details.\n\n\nLicense\n------------------------------------------------------------------------------\n\nThis project is licensed under the [MIT License](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyratanov%2Fember-page-object-asserts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyratanov%2Fember-page-object-asserts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyratanov%2Fember-page-object-asserts/lists"}