示例#1
0
	def test_config(self):
		site = Site.new(name='s2root', domain='test.site2.example.com', app="_test")
		site1 = Site.new(name='s2foo', domain='foo.site2.example.com', parent=site, app="_test")

		n = ConfigVar.q.count()
		v1 = ConfigVar.exists(site,"TEST","testing 123",123)
		v2 = ConfigVar.exists(site,"TEST2","testing 234","234")
		self.assertEqual(ConfigVar.q.count(), n+2)
		v1a = ConfigVar.exists(site,"TEST","testing 123",123)
		assert v1 is v1a
		self.assertEqual(ConfigVar.q.count(), n+2)

		cf = ConfigVar.get(site,"TEST")
		cf2 = ConfigVar.get(site,"TEST2")
		self.assertEquals(cf.value,123)
		self.assertEquals(cf2.value,u"234")
		self.assertEquals(site.config.TEST,123)
		self.assertEquals(site.config.TEST2,"234")

		assert SiteConfigVar.q.filter_by(parent=site.config).count() == 0
		site.config["TEST"] = [12,34]
		assert SiteConfigVar.q.filter_by(parent=site.config).count() == 1
		assert site.config["TEST"] == [12,34]
		assert site1.config["TEST"] == [12,34]
		site1.config["TEST"] = [56,67]
		assert site.config["TEST"] == [12,34]
		assert site1.config["TEST"] == [56,67]
		del site.config["TEST"]
		assert site.config["TEST"] == 123
		assert site1.config["TEST"] == [56,67]

		site1.config["TEST2"] = 987
		assert site1.config["TEST2"] == 987
		assert site.config["TEST2"] == u"234"
		site.config["TEST2"] = u"345"
		assert site1.config["TEST2"] == 987
		assert site.config["TEST2"] == u"345"
		del site1.config["TEST2"]
		assert site1.config["TEST2"] == u"345"
		assert site.config["TEST2"] == u"345"
		del site.config["TEST2"]
		assert site1.config["TEST2"] == u"234"
		assert site.config["TEST2"] == u"234"
		assert site1.config.TEST == [56,67]