samples/componentinjection/anagram-modular/src-test/org/apidesign/anagram/gui/AnagramsTestBase.java
1 package org.apidesign.anagram.gui;
3 import org.apidesign.anagram.api.Scrambler;
4 import org.apidesign.anagram.api.WordLibrary;
5 import static org.junit.Assert.*;
7 import org.netbeans.junit.MockServices;
9 public abstract class AnagramsTestBase {
11 protected abstract Anagrams create();
13 @Test public void testInjectionOfServices() throws Exception {
14 Anagrams ui = create();
16 assertNull("No scrambler injected yet", ui.getScrambler());
17 assertNull("No scrambler injected yet", ui.getWordLibrary());
19 MockServices.setServices(
20 ReversingMockScrambler.class, SingleMockLibrary.class
23 Scrambler s = ui.getScrambler();
24 assertNotNull("Now we have scrambler", s);
26 "It is the mock one", ReversingMockScrambler.class, s.getClass()
28 WordLibrary l = ui.getWordLibrary();
29 assertNotNull("Now we have library", l);
31 "It is the mock one", SingleMockLibrary.class, l.getClass()
35 public static final class ReversingMockScrambler {
39 public static final class SingleMockLibrary {