Example #1
0
	def setup_sites(self):
		self.clear_db()

		app = App.q.get_by(name="_test")
		try: site = Site.q.get_by(domain='test.example.com')
		except NoData: site = Site.new(name='root', domain='test.example.com', app=app)
		try: site2 = Site.q.get_by(domain='foo.example.com')
		except NoData: site2 = Site.new(name='foo', domain='foo.example.com', parent=site, app=app)
		try: site3 = Site.q.get_by(domain='bar.example.com')
		except NoData: site3 = Site.new(name='bar', domain='bar.example.com', parent=site, app=app)
		try: site21 = Site.q.get_by(domain='foo.foo.example.com')
		except NoData: site21 = Site.new(name='foofoo', domain='foo.foo.example.com', parent=site2, app=app)
		db.session.commit()

		with pytest.raises(ManyData):
			site21a = Site.new(name='foofoo', domain='foo2.foo.example.com', parent=site2)
		db.session.rollback()
		with pytest.raises(ManyData):
			site21a = Site.new(name='foofoo3', domain='foo.foo.example.com', parent=site2)
		db.session.rollback()

		ConfigVar.exists(site,"test1","Test One",-1)
		ConfigVar.exists(site,"test2","Test Two",-2)
		db.session.commit()

		app = create_app(site="root", testing=True)
		app1 = create_app(site="foo", testing=True)
		app2 = create_app(site="bar", testing=True)
		app11 = create_app(site="foofoo", testing=True)

		self.assertEqual(app11.config["test1"],-1)
		self.assertEqual(app11.config["test2"],-2)

		return (app,app1,app2,app11)
Example #2
0
	def test_basic(self):
		request.user = User.q.get_by(username=ROOT_USER_NAME)
		app = create_app(testing=True)
		with app.app_context():
			anon = current_site.anon_user(None)
			assert anon.can_read(current_site)
			assert not anon.can_write(current_site)
			assert not anon.can_add(current_site)

			root = Site.q.get_by(parent=None)
			supi = User.q.get_by(username=ROOT_USER_NAME,site=root)
			assert supi.can_read(current_site)
			assert supi.can_write(current_site)
			assert supi.can_add(current_site)