def test_merge_append(self):
        tmp = BuildConfig()
        tmp['libraries'] = ['1']
        fa = BuildConfigFactory(tmp)

        tmp = BuildConfig()
        tmp['libraries'] = ['2']
        fa.merge(tmp, append = True)
        cfg = fa.core_config()
        assert cfg['libraries'] == ['1', '2']
class test_BuildConfigFactory(unittest.TestCase):
    def setUp(self):
        bld = DefaultDict.fromcallable(
                avkeys = build_config_factory_flags(),
                default = lambda: [])
        self.fa = BuildConfigFactory(bld)

    def test_init(self):
        bld = BuildConfig()
        fa = BuildConfigFactory(bld)

    def test_getitem(self):
        assert self.fa['blas'] == self.fa.blas_config

    def test_replace(self):
        b = BuildConfig()
        b['libraries'] = ['yop']
        self.fa.replace(b)
        cfg = self.fa.core_config()
        #print self.fa._data
        for k, v in b.items():
            assert cfg[k] == v

    def test_merge(self):
        tmp = BuildConfig()
        tmp['libraries'] = ['1']
        fa = BuildConfigFactory(tmp)

        tmp = BuildConfig()
        tmp['libraries'] = ['2']
        fa.merge(tmp)
        cfg = fa.core_config()
        assert cfg['libraries'] == ['2', '1']

    def test_merge_append(self):
        tmp = BuildConfig()
        tmp['libraries'] = ['1']
        fa = BuildConfigFactory(tmp)

        tmp = BuildConfig()
        tmp['libraries'] = ['2']
        fa.merge(tmp, append = True)
        cfg = fa.core_config()
        assert cfg['libraries'] == ['1', '2']
 def test_init(self):
     bld = BuildConfig()
     fa = BuildConfigFactory(bld)
 def setUp(self):
     bld = DefaultDict.fromcallable(
             avkeys = build_config_factory_flags(),
             default = lambda: [])
     self.fa = BuildConfigFactory(bld)