{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "chem-bla-ics",
  "description": "Chemblaics (pronounced chem-bla-ics) is the science that uses open science and computers to solve problems in chemistry, biochemistry and related fields.",
  "home_page_url": "https://chem-bla-ics.linkedchemistry.info/",
  "feed_url": "https://chem-bla-ics.linkedchemistry.info/2010/10/26/multiple-unit-test-inheritance-with.json",
  "icon": "https://chem-bla-ics.linkedchemistry.info/assets/images/chem-bla-ics_logo.png",
  "language": "en",
  "authors": [
    {
      "name": "Egon Willighagen",
      "url": "https://orcid.org/0000-0001-7542-0286",
      "_orcid": "0000-0001-7542-0286"
    }
  ],
  "items": [

    {
      "id": "https://doi.org/10.59350/b3fxm-rg432",
      "url": "https://chem-bla-ics.linkedchemistry.info/2010/10/26/multiple-unit-test-inheritance-with.html",
      "title": "Multiple unit test inheritance with JExample",
      "content_html": "<p>Two months ago I wrote about <a href=\"http://scg.unibe.ch/research/jexample\">JExample</a> (see\n<a href=\"https://chem-bla-ics.linkedchemistry.info/2010/08/14/specifying-unit-test-dependencies-with.html\">Specifying unit test dependencies with JExample <i class=\"fa-solid fa-recycle fa-xs\"></i></a>).\nAt the time, my examples did not include multiple unit test inheritance, but was informed later by @jexample\nthat is possible. I just got time to try it in the <a href=\"https://chem-bla-ics.linkedchemistry.info/2010/10/15/working-on-oscar-for-three-months.html\">Oscar <i class=\"fa-solid fa-recycle fa-xs\"></i></a>\nproject:</p>\n\n<div class=\"language-java highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code><span class=\"nd\">@Test</span> <span class=\"kd\">public</span> <span class=\"nc\">Oscar</span> <span class=\"nf\">testConstructor</span><span class=\"o\">()</span>\n<span class=\"kd\">throws</span> <span class=\"nc\">URISyntaxException</span>\n<span class=\"o\">{</span>\n  <span class=\"nc\">Oscar</span> <span class=\"n\">oscar</span> <span class=\"o\">=</span> <span class=\"k\">new</span> <span class=\"nc\">Oscar</span><span class=\"o\">();</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertNotNull</span><span class=\"o\">(</span><span class=\"n\">oscar</span><span class=\"o\">);</span>\n  <span class=\"k\">return</span> <span class=\"n\">oscar</span><span class=\"o\">;</span>\n<span class=\"o\">}</span>\n\n<span class=\"nd\">@Given</span><span class=\"o\">(</span><span class=\"s\">\"#testConstructor\"</span><span class=\"o\">)</span>\n<span class=\"kd\">public</span> <span class=\"nc\">String</span> <span class=\"nf\">testNormalize</span><span class=\"o\">(</span><span class=\"nc\">Oscar</span> <span class=\"n\">oscar</span><span class=\"o\">)</span>\n<span class=\"kd\">throws</span> <span class=\"nc\">URISyntaxException</span>\n<span class=\"o\">{</span>\n  <span class=\"nc\">String</span> <span class=\"n\">input</span> <span class=\"o\">=</span> <span class=\"n\">oscar</span><span class=\"o\">.</span><span class=\"na\">normalize</span><span class=\"o\">(</span>\n    <span class=\"s\">\"This is a simple input string with benzene.\"</span>\n  <span class=\"o\">);</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertNotNull</span><span class=\"o\">(</span><span class=\"n\">input</span><span class=\"o\">);</span>\n  <span class=\"k\">return</span> <span class=\"n\">input</span><span class=\"o\">;</span>\n<span class=\"o\">}</span>\n\n<span class=\"nd\">@Given</span><span class=\"o\">(</span><span class=\"s\">\"#testConstructor,#testNormalize\"</span><span class=\"o\">)</span>\n<span class=\"kd\">public</span> <span class=\"nc\">List</span> <span class=\"nf\">testTokenize</span><span class=\"o\">(</span>\n  <span class=\"nc\">Oscar</span> <span class=\"n\">oscar</span><span class=\"o\">,</span> <span class=\"nc\">String</span> <span class=\"n\">input</span><span class=\"o\">)</span> <span class=\"kd\">throws</span> <span class=\"nc\">Exception</span>\n<span class=\"o\">{</span>\n  <span class=\"nc\">List</span> <span class=\"n\">tokens</span> <span class=\"o\">=</span> <span class=\"n\">oscar</span><span class=\"o\">.</span><span class=\"na\">tokenize</span><span class=\"o\">(</span><span class=\"n\">input</span><span class=\"o\">);</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertNotNull</span><span class=\"o\">(</span><span class=\"n\">tokens</span><span class=\"o\">);</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertNotSame</span><span class=\"o\">(</span><span class=\"mi\">0</span><span class=\"o\">,</span> <span class=\"n\">tokens</span><span class=\"o\">.</span><span class=\"na\">size</span><span class=\"o\">());</span>\n  <span class=\"k\">return</span> <span class=\"n\">tokens</span><span class=\"o\">;</span>\n<span class=\"o\">}</span>\n\n<span class=\"nd\">@Given</span><span class=\"o\">(</span><span class=\"s\">\"#testConstructor,#testTokenize\"</span><span class=\"o\">)</span>\n<span class=\"kd\">public</span> <span class=\"nc\">List</span> <span class=\"nf\">testRecognizeNamedEntities</span><span class=\"o\">(</span>\n  <span class=\"nc\">Oscar</span> <span class=\"n\">oscar</span><span class=\"o\">,</span> <span class=\"nc\">List</span> <span class=\"n\">tokens</span><span class=\"o\">)</span>\n<span class=\"kd\">throws</span> <span class=\"nc\">Exception</span>\n<span class=\"o\">{</span>\n  <span class=\"nc\">List</span> <span class=\"n\">entities</span> <span class=\"o\">=</span>\n    <span class=\"n\">oscar</span><span class=\"o\">.</span><span class=\"na\">recognizeNamedEntities</span><span class=\"o\">(</span><span class=\"n\">tokens</span><span class=\"o\">);</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertNotNull</span><span class=\"o\">(</span><span class=\"n\">entities</span><span class=\"o\">);</span>\n  <span class=\"nc\">Assert</span><span class=\"o\">.</span><span class=\"na\">assertEquals</span><span class=\"o\">(</span><span class=\"mi\">1</span><span class=\"o\">,</span> <span class=\"n\">entities</span><span class=\"o\">.</span><span class=\"na\">size</span><span class=\"o\">());</span>\n  <span class=\"k\">return</span> <span class=\"n\">entities</span><span class=\"o\">;</span>\n<span class=\"o\">}</span>\n</code></pre></div></div>\n\n<p>The pattern here is that each test method returns one variable, so that any method depending on two\nother unit test will have two parameters. The order is defined by the order in which they are given\nby the <em>@Given</em> clause.</p>",
      "summary": "Two months ago I wrote about JExample (see Specifying unit test dependencies with JExample ). At the time, my examples did not include multiple unit test inheritance, but was informed later by @jexample that is possible. I just got time to try it in the Oscar project:",
      
      "date_published": "2010-10-26T00:00:00+00:00",
      "date_modified": "2026-09-27T00:00:00+00:00",
      "tags": ["java","junit"],
      
      
      
      
      
      
        "authors": [ { "name": "Egon Willighagen", "url": "https://orcid.org/0000-0001-7542-0286" } ]
      
    }

  ]
}
