From beae6f26e82ee1fd23fc1ec243dfc68506630644 Mon Sep 17 00:00:00 2001 From: Egon Willighagen Date: Mon, 28 Dec 2009 14:54:15 +0100 Subject: [PATCH] Added missing unit testing for the SMILESWriter Signed-off-by: Rajarshi Guha --- .../openscience/cdk/io/SMILESWriterTest.java | 63 +++++++++++++++++++ .../cdk/modulesuites/MioTests.java | 2 + 2 files changed, 65 insertions(+) create mode 100644 src/test/org/openscience/cdk/io/SMILESWriterTest.java diff --git a/src/test/org/openscience/cdk/io/SMILESWriterTest.java b/src/test/org/openscience/cdk/io/SMILESWriterTest.java new file mode 100644 index 00000000000..050183fee85 --- /dev/null +++ b/src/test/org/openscience/cdk/io/SMILESWriterTest.java @@ -0,0 +1,63 @@ +/* Copyright (C) 2009 Egon Willighagen + * + * Contact: cdk-devel@slists.sourceforge.net + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation; either version 2.1 + * of the License, or (at your option) any later version. + * All we ask is that proper credit is given for our work, which includes + * - but is not limited to - adding the above copyright notice to the beginning + * of your source code files, and to any copyright notice that you may distribute + * with programs based on this work. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + */ +package org.openscience.cdk.io; + +import java.io.StringWriter; + +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; +import org.openscience.cdk.Molecule; +import org.openscience.cdk.MoleculeSet; +import org.openscience.cdk.interfaces.IMolecule; +import org.openscience.cdk.templates.MoleculeFactory; + +/** + * TestCase for the writer for SMILES files. + * + * @cdk.module test-io + * + * @see org.openscience.cdk.io.SMILESWriter + */ +public class SMILESWriterTest extends ChemObjectIOTest { + + @BeforeClass public static void setup() { + setChemObjectIO(new SMILESWriter()); + } + + @Test public void testAccepts() throws Exception { + SMILESWriter reader = new SMILESWriter(); + Assert.assertTrue(reader.accepts(Molecule.class)); + Assert.assertTrue(reader.accepts(MoleculeSet.class)); + } + + @Test public void testWriteSMILESFile() throws Exception { + StringWriter stringWriter = new StringWriter(); + IMolecule benzene = MoleculeFactory.makeBenzene(); + SMILESWriter smilesWriter = new SMILESWriter(stringWriter); + smilesWriter.write(benzene); + smilesWriter.close(); + Assert.assertTrue(stringWriter.toString().contains("C=C")); + } + +} diff --git a/src/test/org/openscience/cdk/modulesuites/MioTests.java b/src/test/org/openscience/cdk/modulesuites/MioTests.java index a6bd930f050..8e5df2f5342 100644 --- a/src/test/org/openscience/cdk/modulesuites/MioTests.java +++ b/src/test/org/openscience/cdk/modulesuites/MioTests.java @@ -53,6 +53,7 @@ import org.openscience.cdk.io.ReaderFactoryTest; import org.openscience.cdk.io.SDFReaderTest; import org.openscience.cdk.io.SDFWriterTest; +import org.openscience.cdk.io.SMILESWriterTest; import org.openscience.cdk.io.ShelXReaderTest; import org.openscience.cdk.io.WriterFactoryTest; import org.openscience.cdk.io.XYZReaderTest; @@ -98,6 +99,7 @@ PDBWriterTest.class, PMPReaderTest.class, ShelXReaderTest.class, + SMILESWriterTest.class, XYZReaderTest.class, XYZWriterTest.class,