{"id":26002756,"url":"https://github.com/mam-dev/spock-order-extension","last_synced_at":"2026-04-20T01:05:05.968Z","repository":{"id":141454655,"uuid":"304383893","full_name":"mam-dev/spock-order-extension","owner":"mam-dev","description":null,"archived":false,"fork":false,"pushed_at":"2020-10-29T18:00:38.000Z","size":27,"stargazers_count":0,"open_issues_count":1,"forks_count":2,"subscribers_count":19,"default_branch":"main","last_synced_at":"2026-01-14T03:49:13.455Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mam-dev.png","metadata":{"files":{"readme":"README.adoc","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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-15T16:20:56.000Z","updated_at":"2024-07-15T15:45:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"61367e9e-1028-4e31-8ab1-925d43589a24","html_url":"https://github.com/mam-dev/spock-order-extension","commit_stats":null,"previous_names":["mam-dev/spock-order-extension","1and1/spock-order-extension"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/mam-dev/spock-order-extension","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mam-dev%2Fspock-order-extension","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mam-dev%2Fspock-order-extension/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mam-dev%2Fspock-order-extension/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mam-dev%2Fspock-order-extension/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mam-dev","download_url":"https://codeload.github.com/mam-dev/spock-order-extension/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mam-dev%2Fspock-order-extension/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32028550,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"ssl_error","status_checked_at":"2026-04-20T00:17:31.068Z","response_time":55,"last_error":"SSL_read: 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":[],"created_at":"2025-03-05T19:30:12.888Z","updated_at":"2026-04-20T01:05:05.957Z","avatar_url":"https://github.com/mam-dev.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"= Spock Order Extension\n\nThis extension gives the opportunity to define the order between specs and its parent.\n\nLike `@Stepwise` it ensures a defined execution order and skipps all the following features if a feature fails.\n\nUnlike `@Stepwise` it effects the complete hierarchy and lets you modify the execution order.\n\n.Reasons to use this extension\n- you want to start your test with a feature of the child spec\n- you want to skip features of your base spec\n\n== Usage\n\nAdd dependency\n\n[source,xml]\n.pom.xml\n----\n\u003cdependencies\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003enet.oneandone.spock\u003c/groupId\u003e\n        \u003cartifactId\u003eorder-extension\u003c/artifactId\u003e\n        \u003cversion\u003e0.1\u003c/version\u003e\n        \u003cscope\u003etest\u003c/scope\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n----\n\nAnnotate your spec with `@Order` and define order with annotations:\n`@After` and `@Before`.\n\n[source,groovy]\n.OrderExtensionFullExampleTest\n----\n@Order(skip = 'base 5')\nclass OrderExtensionFullExampleTest extends Base {\n    @After(\"base 1\")\n    def \"child 1\"() {\n        expect: true\n    }\n\n    def \"child 2\"() {\n        expect: true\n    }\n\n    @Before(\"base 2\")\n    def \"child 3\"() {\n        expect: true\n    }\n\n    @After(\"base 3\") @Before(\"base 4\")\n    def \"child 4\"() {\n        expect: true\n    }\n}\n\nclass Base extends Specification {\n    def \"base 1\"() {\n        expect: true\n    }\n\n    def \"base 2\"() {\n        expect: true\n    }\n\n    def \"base 3\"() {\n        expect: true\n    }\n\n    def \"base 4\"() {\n        expect: true\n    }\n\n    def \"base 5\"() {\n        expect: true\n    }\n}\n----\n\nThis gives the following execution order:\n\n- base 1\n- child 1 `@After(\"base 1\")`\n- child 2 _after step1 due to declaration order_\n- child 3 `@Before(\"base 2\")`\n- base 2\n- base 3 _after base2 due to declaration order_\n- child 4 `@After(\"base 3\") @Before(\"base 4\")`\n- base 4\n- _base 5 (skipped)_ `@Order(skip = 'base 5')`\n\n== Hints\n\n- Features which  are not annotated are executed in declaration order\n- If `@After` does not point to the last base feature it must be followed by `@Before`, so that it's clear when to continue the execution with the base features.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmam-dev%2Fspock-order-extension","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmam-dev%2Fspock-order-extension","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmam-dev%2Fspock-order-extension/lists"}