コード例 #1
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueLists(self):
     self.assertEqual(parser.DefaultParseValue('[1, 2, 3]'), [1, 2, 3])
     self.assertEqual(parser.DefaultParseValue('[1, "2", 3]'), [1, '2', 3])
     self.assertEqual(parser.DefaultParseValue('[1, \'"2"\', 3]'),
                      [1, '"2"', 3])
     self.assertEqual(parser.DefaultParseValue('[1, "hello", 3]'),
                      [1, 'hello', 3])
コード例 #2
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueStrings(self):
     self.assertEqual(parser.DefaultParseValue('hello'), 'hello')
     self.assertEqual(parser.DefaultParseValue('path/file.jpg'),
                      'path/file.jpg')
     self.assertEqual(parser.DefaultParseValue('hello world'),
                      'hello world')
     self.assertEqual(parser.DefaultParseValue('--flag'), '--flag')
コード例 #3
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueNestedContainers(self):
     self.assertEqual(
         parser.DefaultParseValue(
             '[(A, 2, "3"), 5, {alph: 10.2, beta: "cat"}]'),
         [('A', 2, '3'), 5, {
             'alph': 10.2,
             'beta': 'cat'
         }])
コード例 #4
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueNumbers(self):
     self.assertEqual(parser.DefaultParseValue('23'), 23)
     self.assertEqual(parser.DefaultParseValue('-23'), -23)
     self.assertEqual(parser.DefaultParseValue('23.0'), 23.0)
     self.assertIsInstance(parser.DefaultParseValue('23'), int)
     self.assertIsInstance(parser.DefaultParseValue('23.0'), float)
     self.assertEqual(parser.DefaultParseValue('23.5'), 23.5)
     self.assertEqual(parser.DefaultParseValue('-23.5'), -23.5)
コード例 #5
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueStringNumbers(self):
     self.assertEqual(parser.DefaultParseValue("'23'"), '23')
     self.assertEqual(parser.DefaultParseValue("'23.0'"), '23.0')
     self.assertEqual(parser.DefaultParseValue("'23.5'"), '23.5')
     self.assertEqual(parser.DefaultParseValue('"23"'), '23')
     self.assertEqual(parser.DefaultParseValue('"23.0"'), '23.0')
     self.assertEqual(parser.DefaultParseValue('"23.5"'), '23.5')
コード例 #6
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueSpecialStrings(self):
     self.assertEqual(parser.DefaultParseValue('-'), '-')
     self.assertEqual(parser.DefaultParseValue('--'), '--')
     self.assertEqual(parser.DefaultParseValue('---'), '---')
     self.assertEqual(parser.DefaultParseValue('----'), '----')
     self.assertEqual(parser.DefaultParseValue('None'), None)
     self.assertEqual(parser.DefaultParseValue("'None'"), 'None')
コード例 #7
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueQuotedStrings(self):
     self.assertEqual(parser.DefaultParseValue("'hello'"), 'hello')
     self.assertEqual(parser.DefaultParseValue("'hello world'"),
                      'hello world')
     self.assertEqual(parser.DefaultParseValue("'--flag'"), '--flag')
     self.assertEqual(parser.DefaultParseValue('"hello"'), 'hello')
     self.assertEqual(parser.DefaultParseValue('"hello world"'),
                      'hello world')
     self.assertEqual(parser.DefaultParseValue('"--flag"'), '--flag')
コード例 #8
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueQuotedStringNumbers(self):
     self.assertEqual(parser.DefaultParseValue('"\'123\'"'), "'123'")
コード例 #9
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueDict(self):
     self.assertEqual(parser.DefaultParseValue('{"abc": 5, "123": 1}'), {
         'abc': 5,
         '123': 1
     })
コード例 #10
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueSyntaxError(self):
     # If it can't be parsed, we treat it as a string.
     self.assertEqual(parser.DefaultParseValue('"'), '"')
コード例 #11
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueBadLiteral(self):
     # If it can't be parsed, we treat it as a string. This behavior may change.
     self.assertEqual(parser.DefaultParseValue('[(A, 2, "3"), 5'),
                      '[(A, 2, "3"), 5')
     self.assertEqual(parser.DefaultParseValue('x=10'), 'x=10')
コード例 #12
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueComments(self):
     self.assertEqual(parser.DefaultParseValue('"0#comments"'),
                      '0#comments')
     # Comments are stripped. This behavior may change in the future.
     self.assertEqual(parser.DefaultParseValue('0#comments'), 0)
コード例 #13
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueBareWordsTuple(self):
     self.assertEqual(parser.DefaultParseValue('(one, 2, "3")'),
                      ('one', 2, '3'))
     self.assertEqual(parser.DefaultParseValue('one, "2", 3'),
                      ('one', '2', 3))
コード例 #14
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueBool(self):
     self.assertEqual(parser.DefaultParseValue('True'), True)
     self.assertEqual(parser.DefaultParseValue('False'), False)
コード例 #15
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueNone(self):
     self.assertEqual(parser.DefaultParseValue('None'), None)
コード例 #16
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueOtherNumbers(self):
     self.assertEqual(parser.DefaultParseValue('1e5'), 100000.0)
コード例 #17
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueIgnoreBinOp(self):
     self.assertEqual(parser.DefaultParseValue('2017-10-10'), '2017-10-10')
     self.assertEqual(parser.DefaultParseValue('1+1'), '1+1')
コード例 #18
0
ファイル: parser_test.py プロジェクト: d3rp/clima
 def testDefaultParseValueBareWordsLists(self):
     self.assertEqual(parser.DefaultParseValue('[one, 2, "3"]'),
                      ['one', 2, '3'])