Пример #1
0
    def test_writing(self):
        p = settings._JSONConfigParser()
        p.read(self.filenames)

        p.set('foo', 'xxx')
        p.set('someLongNameHere_etc_etc', 'xxx')
        p.set('someLongNameHere_etc_etc.with.a.path',
              True,
              filename=self.filenames[1])
        p.set('someLongNameHere_etc_etc.with.a.path',
              False,
              filename=self.filenames[1])
        p.set('someLongNameHere_etc_etc.with.a.path',
              7,
              filename=self.filenames[2])
        p.set('someLongNameHere_etc_etc.with.another.path',
              7,
              filename=self.filenames[2])

        # NB: only write settings to the first file
        p.write()

        self.assertEqual(p.get('foo'), 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc'), 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.another.path'),
                         7)

        p2 = settings._JSONConfigParser()
        p2.read(self.filenames)
        self.assertEqual(p2.get('foo'), 'xxx')
        self.assertEqual(p2.get('someLongNameHere_etc_etc'), 'xxx')

        # check that we only wrote settings to the first file
        self.assertEqual(p2.get('someLongNameHere_etc_etc.with.a.path'), None)

        # now write settings for the other files, and continue
        p.write(self.filenames[1])
        p.write(self.filenames[2])

        p3 = settings._JSONConfigParser()
        p3.read(self.filenames)
        self.assertEqual(p3.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p3.get('someLongNameHere_etc_etc.with.another.path'),
                         7)

        p4 = settings._JSONConfigParser()
        p4.read([self.filenames[1]])
        self.assertEqual(p4.get('foo'), None)
        self.assertEqual(p4.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p4.get('someLongNameHere_etc_etc.with.another.path'),
                         None)

        p5 = settings._JSONConfigParser()
        p5.read([self.filenames[2]])
        self.assertEqual(p5.get('foo'), None)
        self.assertEqual(p5.get('someLongNameHere_etc_etc.with.a.path'), 7)
        self.assertEqual(p5.get('someLongNameHere_etc_etc.with.another.path'),
                         7)
Пример #2
0
    def test_writing(self):
        p = settings._JSONConfigParser()
        p.read(self.filenames)

        p.set('foo', 'xxx')
        p.set('someLongNameHere_etc_etc', 'xxx')
        p.set('someLongNameHere_etc_etc.with.a.path', True, filename=self.filenames[1])
        p.set('someLongNameHere_etc_etc.with.a.path', False, filename=self.filenames[1])
        p.set('someLongNameHere_etc_etc.with.a.path', 7, filename=self.filenames[2])
        p.set('someLongNameHere_etc_etc.with.another.path', 7, filename=self.filenames[2])
        
        # NB: only write settings to the first file
        p.write()

        self.assertEqual(p.get('foo'), 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc'), 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.another.path'), 7)

        p2 = settings._JSONConfigParser()
        p2.read(self.filenames)
        self.assertEqual(p2.get('foo'), 'xxx')
        self.assertEqual(p2.get('someLongNameHere_etc_etc'), 'xxx')

        # check that we only wrote settings to the first file
        self.assertEqual(p2.get('someLongNameHere_etc_etc.with.a.path'), None)

        # now write settings for the other files, and continue
        p.write(self.filenames[1])
        p.write(self.filenames[2])

        p3 = settings._JSONConfigParser()
        p3.read(self.filenames)
        self.assertEqual(p3.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p3.get('someLongNameHere_etc_etc.with.another.path'), 7)


        p4 = settings._JSONConfigParser()
        p4.read([self.filenames[1]])
        self.assertEqual(p4.get('foo'), None)
        self.assertEqual(p4.get('someLongNameHere_etc_etc.with.a.path'), False)
        self.assertEqual(p4.get('someLongNameHere_etc_etc.with.another.path'), None)

        p5 = settings._JSONConfigParser()
        p5.read([self.filenames[2]])
        self.assertEqual(p5.get('foo'), None)
        self.assertEqual(p5.get('someLongNameHere_etc_etc.with.a.path'), 7)
        self.assertEqual(p5.get('someLongNameHere_etc_etc.with.another.path'), 7)
Пример #3
0
    def test_setting(self):
        p = settings._JSONConfigParser()
        p.read(self.filenames)

        p.set('foo', 'xxx')
        self.assertEqual(p.get('foo'), 'xxx')

        p.set('someLongNameHere_etc_etc', 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc'), 'xxx')

        p.set('someLongNameHere_etc_etc.with.a.path',
              True,
              filename=self.filenames[1])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), True)

        p.set('someLongNameHere_etc_etc.with.a.path',
              False,
              filename=self.filenames[1])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)

        # NB: don't expect it to change when we set a value that's shadowed by
        # an earlier file:
        p.set('someLongNameHere_etc_etc.with.a.path',
              7,
              filename=self.filenames[2])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)

        p.set('someLongNameHere_etc_etc.with.another.path',
              7,
              filename=self.filenames[2])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.another.path'),
                         7)
Пример #4
0
    def test_setting(self):
        p = settings._JSONConfigParser()
        p.read(self.filenames)

        p.set('foo', 'xxx')
        self.assertEqual(p.get('foo'), 'xxx')

        p.set('someLongNameHere_etc_etc', 'xxx')
        self.assertEqual(p.get('someLongNameHere_etc_etc'), 'xxx')

        p.set('someLongNameHere_etc_etc.with.a.path', True, filename=self.filenames[1])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), True)

        p.set('someLongNameHere_etc_etc.with.a.path', False, filename=self.filenames[1])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)

        # NB: don't expect it to change when we set a value that's shadowed by
        # an earlier file:
        p.set('someLongNameHere_etc_etc.with.a.path', 7, filename=self.filenames[2])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.a.path'), False)

        p.set('someLongNameHere_etc_etc.with.another.path', 7, filename=self.filenames[2])
        self.assertEqual(p.get('someLongNameHere_etc_etc.with.another.path'), 7)
Пример #5
0
 def test_merging(self):
     p = settings._JSONConfigParser()
     p.read(self.filenames)
     self.assertEqual(p.get('a.b.c'), '1-value')
     self.assertEqual(p.get('a.b2'), '2-value')
     self.assertEqual(p.get('a2'), '3-value')
Пример #6
0
 def test_merging(self):
     p = settings._JSONConfigParser()
     p.read(self.filenames)
     self.assertEqual(p.get('a.b.c'), '1-value')
     self.assertEqual(p.get('a.b2'), '2-value')
     self.assertEqual(p.get('a2'), '3-value')