{
Cache.initLogger();
}
-
@BeforeClass(alwaysRun = true)
public void setUpJvOptionPane()
MapList map = new MapList(new int[] { 5, 10 }, new int[] { 12, 13 }, 3,
1);
acf.addMap(seq1.getDatasetSequence(), aseq1.getDatasetSequence(), map);
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
/*
* Check protein residue 12 maps to codon 5-7, 13 to codon 8-10
* Map dna bases [6, 8, 9], [11, 13, 115] to protein residues 8 and 9
*/
AlignedCodonFrame acf = new AlignedCodonFrame();
- MapList map = new MapList(new int[] { 6, 6, 8, 9, 11, 11, 13, 13, 15,
- 15 }, new int[] { 8, 9 }, 3, 1);
+ MapList map = new MapList(
+ new int[]
+ { 6, 6, 8, 9, 11, 11, 13, 13, 15, 15 }, new int[] { 8, 9 }, 3,
+ 1);
acf.addMap(seq1.getDatasetSequence(), aseq1.getDatasetSequence(), map);
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
/*
* Check protein residue 8 maps to [6, 8, 9]
for (int i = 5; i < 18; i++)
{
sr = MappingUtils.buildSearchResults(seq1, i, acfList);
- int residue = (i == 6 || i == 8 || i == 9) ? 8 : (i == 11 || i == 13
- || i == 15 ? 9 : 0);
+ int residue = (i == 6 || i == 8 || i == 9) ? 8
+ : (i == 11 || i == 13 || i == 15 ? 9 : 0);
if (residue == 0)
{
assertEquals(0, sr.getResults().size());
MapList map = new MapList(new int[] { 1, 3 }, new int[] { 1, 1 }, 3, 1);
for (int seq = 0; seq < 3; seq++)
{
- acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(), protein
- .getSequenceAt(seq).getDatasetSequence(), map);
+ acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(),
+ protein.getSequenceAt(seq).getDatasetSequence(), map);
}
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
AlignViewportI dnaView = new AlignViewport(cdna);
AlignViewportI proteinView = new AlignViewport(protein);
protected AlignmentI loadAlignment(final String data, FileFormatI format)
throws IOException
{
- AlignmentI a = new FormatAdapter().readFile(data,
- DataSourceType.PASTE, format);
+ AlignmentI a = new FormatAdapter().readFile(data, DataSourceType.PASTE,
+ format);
a.setDataset(null);
return a;
}
cs.clear();
colsel.clear();
colsel.addElement(2);
- MappingUtils.mapColumnSelection(colsel, hidden, proteinView,
- dnaView, cs, hs);
+ MappingUtils.mapColumnSelection(colsel, hidden, proteinView, dnaView,
+ cs, hs);
assertEquals("[]", cs.getSelected().toString());
/*
cs.clear();
colsel.clear();
colsel.addElement(3);
- MappingUtils.mapColumnSelection(colsel, hidden, proteinView,
- dnaView, cs, hs);
+ MappingUtils.mapColumnSelection(colsel, hidden, proteinView, dnaView,
+ cs, hs);
assertEquals("[5, 6, 7, 8, 9, 10]", cs.getSelected().toString());
/*
colsel.clear();
colsel.addElement(1);
colsel.addElement(3);
- MappingUtils.mapColumnSelection(colsel, hidden, proteinView,
- dnaView, cs, hs);
- assertEquals("[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]", cs.getSelected()
- .toString());
+ MappingUtils.mapColumnSelection(colsel, hidden, proteinView, dnaView,
+ cs, hs);
+ assertEquals("[0, 1, 2, 3, 5, 6, 7, 8, 9, 10]",
+ cs.getSelected().toString());
}
/**
// map first dna to first protein seq
AlignedCodonFrame acf = new AlignedCodonFrame();
MapList map = new MapList(new int[] { 10, 12, 15, 15, 17, 18 },
- new int[] { 40, 41 }, 3, 1);
- acf.addMap(cdna.getSequenceAt(0).getDatasetSequence(), protein
- .getSequenceAt(0).getDatasetSequence(), map);
+ new int[]
+ { 40, 41 }, 3, 1);
+ acf.addMap(cdna.getSequenceAt(0).getDatasetSequence(),
+ protein.getSequenceAt(0).getDatasetSequence(), map);
// map second dna to second protein seq
- map = new MapList(new int[] { 20, 20, 22, 23, 24, 26 }, new int[] { 50,
- 51 }, 3, 1);
- acf.addMap(cdna.getSequenceAt(1).getDatasetSequence(), protein
- .getSequenceAt(1).getDatasetSequence(), map);
+ map = new MapList(new int[] { 20, 20, 22, 23, 24, 26 },
+ new int[]
+ { 50, 51 }, 3, 1);
+ acf.addMap(cdna.getSequenceAt(1).getDatasetSequence(),
+ protein.getSequenceAt(1).getDatasetSequence(), map);
// map third dna to third protein seq
- map = new MapList(new int[] { 30, 30, 32, 34, 36, 37 }, new int[] { 60,
- 61 }, 3, 1);
- acf.addMap(cdna.getSequenceAt(2).getDatasetSequence(), protein
- .getSequenceAt(2).getDatasetSequence(), map);
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ map = new MapList(new int[] { 30, 30, 32, 34, 36, 37 },
+ new int[]
+ { 60, 61 }, 3, 1);
+ acf.addMap(cdna.getSequenceAt(2).getDatasetSequence(),
+ protein.getSequenceAt(2).getDatasetSequence(), map);
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
dnaView = new AlignViewport(cdna);
proteinView = new AlignViewport(protein);
public void testFlattenRanges()
{
assertEquals("[1, 2, 3, 4]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 1, 4 })));
- assertEquals(
- "[1, 2, 3, 4]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 1, 2, 3,
- 4 })));
- assertEquals(
- "[1, 2, 3, 4]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 1, 1, 2,
- 2, 3, 3, 4, 4 })));
- assertEquals(
- "[1, 2, 3, 4, 7, 8, 9, 12]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 1, 4, 7,
- 9, 12, 12 })));
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 1, 4 })));
+ assertEquals("[1, 2, 3, 4]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 1, 2, 3, 4 })));
+ assertEquals("[1, 2, 3, 4]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 1, 1, 2, 2, 3, 3, 4, 4 })));
+ assertEquals("[1, 2, 3, 4, 7, 8, 9, 12]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 1, 4, 7, 9, 12, 12 })));
// trailing unpaired start position is ignored:
- assertEquals(
- "[1, 2, 3, 4, 7, 8, 9, 12]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 1, 4, 7,
- 9, 12, 12, 15 })));
+ assertEquals("[1, 2, 3, 4, 7, 8, 9, 12]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 1, 4, 7, 9, 12, 12, 15 })));
}
/**
MapList map = new MapList(new int[] { 1, 6 }, new int[] { 1, 2 }, 3, 1);
for (int seq = 0; seq < 3; seq++)
{
- acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(), protein
- .getSequenceAt(seq).getDatasetSequence(), map);
+ acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(),
+ protein.getSequenceAt(seq).getDatasetSequence(), map);
}
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
AlignViewportI dnaView = new AlignViewport(cdna);
AlignViewportI proteinView = new AlignViewport(protein);
FileFormat.Fasta);
cdna.setDataset(null);
AlignmentI protein = loadAlignment(
- ">Seq1\n-KA-S\n>Seq2\n--L-QY\n>Seq3\nQ-V-M\n", FileFormat.Fasta);
+ ">Seq1\n-KA-S\n>Seq2\n--L-QY\n>Seq3\nQ-V-M\n",
+ FileFormat.Fasta);
protein.setDataset(null);
AlignedCodonFrame acf = new AlignedCodonFrame();
MapList map = new MapList(new int[] { 1, 9 }, new int[] { 1, 3 }, 3, 1);
for (int seq = 0; seq < 3; seq++)
{
- acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(), protein
- .getSequenceAt(seq).getDatasetSequence(), map);
+ acf.addMap(cdna.getSequenceAt(seq).getDatasetSequence(),
+ protein.getSequenceAt(seq).getDatasetSequence(), map);
}
- List<AlignedCodonFrame> acfList = Arrays.asList(new AlignedCodonFrame[]
- { acf });
+ List<AlignedCodonFrame> acfList = Arrays
+ .asList(new AlignedCodonFrame[]
+ { acf });
AlignViewportI dnaView = new AlignViewport(cdna);
AlignViewportI proteinView = new AlignViewport(protein);
/*
* Seq1 has three mappings
*/
- List<AlignedCodonFrame> result = MappingUtils.findMappingsForSequence(
- seq1, mappings);
+ List<AlignedCodonFrame> result = MappingUtils
+ .findMappingsForSequence(seq1, mappings);
assertEquals(3, result.size());
assertTrue(result.contains(acf1));
assertTrue(result.contains(acf2));
*/
List<AlignedCodonFrame> result = MappingUtils
.findMappingsForSequenceAndOthers(null, mappings,
- Arrays.asList(new SequenceI[] { seq1, seq2 }));
+ Arrays.asList(new SequenceI[]
+ { seq1, seq2 }));
assertTrue(result.isEmpty());
result = MappingUtils.findMappingsForSequenceAndOthers(seq1, null,
- Arrays.asList(new SequenceI[] { seq1, seq2 }));
+ Arrays.asList(new SequenceI[]
+ { seq1, seq2 }));
assertTrue(result.isEmpty());
/*
* Seq1 has three mappings, but filter argument will only accept
* those to seq2
*/
- result = MappingUtils.findMappingsForSequenceAndOthers(
- seq1,
- mappings,
- Arrays.asList(new SequenceI[] { seq1, seq2,
- seq1.getDatasetSequence() }));
+ result = MappingUtils.findMappingsForSequenceAndOthers(seq1, mappings,
+ Arrays.asList(new SequenceI[]
+ { seq1, seq2, seq1.getDatasetSequence() }));
assertEquals(2, result.size());
assertTrue(result.contains(acf1));
assertTrue(result.contains(acf2));
dna.createDatasetSequence();
protein.createDatasetSequence();
AlignedCodonFrame acf = new AlignedCodonFrame();
- MapList map = new MapList(new int[] { 8, 16 }, new int[] { 5, 7 }, 3, 1);
+ MapList map = new MapList(new int[] { 8, 16 }, new int[] { 5, 7 }, 3,
+ 1);
acf.addMap(dna.getDatasetSequence(), protein.getDatasetSequence(), map);
List<AlignedCodonFrame> mappings = new ArrayList<>();
mappings.add(acf);
*/
EditCommand ec = new EditCommand();
final Edit edit = ec.new Edit(Action.INSERT_GAP,
- new SequenceI[] { protein }, 4, 2, '-');
+ new SequenceI[]
+ { protein }, 4, 2, '-');
ec.appendEdit(edit, prot, true, null);
/*
public void testFlattenRanges_reverseStrand()
{
assertEquals("[4, 3, 2, 1]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 4, 1 })));
- assertEquals(
- "[4, 3, 2, 1]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 4, 3, 2,
- 1 })));
- assertEquals(
- "[4, 3, 2, 1]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 4, 4, 3,
- 3, 2, 2, 1, 1 })));
- assertEquals(
- "[12, 9, 8, 7, 4, 3, 2, 1]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 12, 12,
- 9, 7, 4, 1 })));
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 4, 1 })));
+ assertEquals("[4, 3, 2, 1]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 4, 3, 2, 1 })));
+ assertEquals("[4, 3, 2, 1]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 4, 4, 3, 3, 2, 2, 1, 1 })));
+ assertEquals("[12, 9, 8, 7, 4, 3, 2, 1]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 12, 12, 9, 7, 4, 1 })));
// forwards and backwards anyone?
- assertEquals(
- "[4, 5, 6, 3, 2, 1]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 4, 6, 3,
- 1 })));
+ assertEquals("[4, 5, 6, 3, 2, 1]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 4, 6, 3, 1 })));
// backwards and forwards
- assertEquals(
- "[3, 2, 1, 4, 5, 6]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 3, 1, 4,
- 6 })));
+ assertEquals("[3, 2, 1, 4, 5, 6]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 3, 1, 4, 6 })));
// trailing unpaired start position is ignored:
- assertEquals(
- "[12, 9, 8, 7, 4, 3, 2]",
- Arrays.toString(MappingUtils.flattenRanges(new int[] { 12, 12,
- 9, 7, 4, 2, 1 })));
+ assertEquals("[12, 9, 8, 7, 4, 3, 2]",
+ Arrays.toString(MappingUtils.flattenRanges(new int[]
+ { 12, 12, 9, 7, 4, 2, 1 })));
}
/**
/*
* both forward ranges
*/
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 1, 10 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 2, 10 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 1, 9 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 4, 5 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 0, 9 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- -10, -9 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 1, 11 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 11, 12 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 1, 10 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 2, 10 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 1, 9 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 4, 5 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 0, 9 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { -10, -9 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 1, 11 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 11, 12 }));
/*
* forward range, reverse query
*/
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 10, 1 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 9, 1 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 10, 2 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 5, 5 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 11, 1 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, new int[] {
- 10, 0 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 10, 1 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 9, 1 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 10, 2 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 5, 5 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 11, 1 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 10, 0 }));
/*
* reverse range, forward query
*/
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 1, 10 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 1, 9 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 2, 10 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 6, 6 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 6, 11 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 11, 20 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- -3, -2 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 1, 10 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 1, 9 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 2, 10 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 6, 6 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 6, 11 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 11, 20 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { -3, -2 }));
/*
* both reverse
*/
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 10, 1 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 9, 1 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 10, 2 }));
- assertTrue(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 3, 3 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 11, 1 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 10, 0 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- 12, 11 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 10, 1 }, new int[] {
- -5, -8 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 10, 1 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 9, 1 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 10, 2 }));
+ assertTrue(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 3, 3 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 11, 1 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 10, 0 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { 12, 11 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 10, 1 }, new int[] { -5, -8 }));
/*
* bad arguments
*/
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10, 12 },
- new int[] {
- 1, 10 }));
- assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 },
- new int[] { 1 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10, 12 }, new int[] { 1, 10 }));
+ assertFalse(
+ MappingUtils.rangeContains(new int[]
+ { 1, 10 }, new int[] { 1 }));
assertFalse(MappingUtils.rangeContains(new int[] { 1, 10 }, null));
assertFalse(MappingUtils.rangeContains(null, new int[] { 1, 10 }));
}
assertEquals(1, ranges.size());
assertEquals(9, ranges.get(0)[1]);
}
-
+
@Test(groups = "Functional")
public void testListToArray()
{
List<int[]> ranges = new ArrayList<>();
-
- int[] result = MappingUtils.listToArray(ranges);
+
+ int[] result = MappingUtils.rangeListToArray(ranges);
assertEquals(result.length, 0);
- ranges.add(new int[] {24, 12});
- result = MappingUtils.listToArray(ranges);
+ ranges.add(new int[] { 24, 12 });
+ result = MappingUtils.rangeListToArray(ranges);
assertEquals(result.length, 2);
assertEquals(result[0], 24);
assertEquals(result[1], 12);
- ranges.add(new int[] {-7, 30});
- result = MappingUtils.listToArray(ranges);
+ ranges.add(new int[] { -7, 30 });
+ result = MappingUtils.rangeListToArray(ranges);
assertEquals(result.length, 4);
assertEquals(result[0], 24);
assertEquals(result[1], 12);
assertEquals(result[3], 30);
try
{
- MappingUtils.listToArray(null);
+ MappingUtils.rangeListToArray(null);
fail("Expected exception");
} catch (NullPointerException e)
{