summaryrefslogtreecommitdiff
path: root/tests/test.py
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2014-05-04 22:05:13 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2014-05-04 22:05:13 -0400
commit01e8cab3769e46d41052085f5240030d6bde2b6c (patch)
tree16c768355aac9e9ec365f2057dd99e3bebb25efa /tests/test.py
downloadsexparse-01e8cab3769e46d41052085f5240030d6bde2b6c.tar.gz
Initial commit
Diffstat (limited to 'tests/test.py')
-rw-r--r--tests/test.py75
1 files changed, 75 insertions, 0 deletions
diff --git a/tests/test.py b/tests/test.py
new file mode 100644
index 0000000..5be093f
--- /dev/null
+++ b/tests/test.py
@@ -0,0 +1,75 @@
+#!/usr/bin/env python
+
+#Copyright (c) 2014, Joseph Hunkeler <jhunkeler at gmail.com>
+#All rights reserved.
+#
+#Redistribution and use in source and binary forms, with or without
+#modification, are permitted provided that the following conditions are met:
+#
+#1. Redistributions of source code must retain the above copyright notice, this
+# list of conditions and the following disclaimer.
+#2. Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+#THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+#ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+#WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+#DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+#ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+#(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+#LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+#ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+#SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+import os
+import sexparse
+import unittest
+
+DATA = os.path.abspath('data')
+
+class TestSexConfig(unittest.TestCase):
+ def setUp(self):
+ self.default_file = os.path.join(DATA, 'default.sex')
+ self.new_file = os.path.join(DATA, 'test.sex')
+ self.config = sexparse.SexConfig(self.default_file)
+
+ def tearDown(self):
+ if os.path.exists(self.new_file):
+ os.unlink(self.new_file)
+
+ def test_reading(self):
+ self.assertIsNone(self.config.read())
+
+ def test_writing(self):
+ self.assertIsNone(self.config.write())
+'''
+ def test_write_new_config(self):
+ self.config.write(self.default_file)
+ self.assertTrue(os.path.exists(self.default_file))
+
+
+ def test_write_new_config_and_read(self):
+ self.config.write(self.new_file)
+ self.assertTrue(os.path.exists(self.new_file))
+ #config_new = sexparse.SexConfig(self.new_file)
+ #self.assertEqual(config_new.pairs, self.config.pairs)
+
+ def test_pairs_populated(self):
+ self.assertIsNotNone(self.config.pairs)
+'''
+
+if __name__ == "__main__":
+ unittest.main()
+
+'''
+config = sexparse.SexConfig(os.path.join(DATA, 'default.sex'))
+
+param = sexparse.SexParam(os.path.join(DATA, 'default.param'))
+param.write(os.path.join(DATA, 'user.param'))
+
+param_user = sexparse.SexParam(os.path.join(DATA, 'user.param'))
+param_user['FLUX_APER'] = 2
+param_user.enable('FLUX_APER', True)
+param_user.write()
+''' \ No newline at end of file