From: Daira Hopwood Date: Thu, 5 Sep 2013 16:58:19 +0000 (+0100) Subject: Fri Apr 6 00:57:23 BST 2012 david-sarah@jacaranda.org X-Git-Url: https://git.rkrishnan.org/Site/Content/Exhibitors/nxhtml.html?a=commitdiff_plain;h=6071a595eed59e79128e40dca9fb03ff87f9b1a8;p=tahoe-lafs%2Ftahoe-lafs.git Fri Apr 6 00:57:23 BST 2012 david-sarah@jacaranda.org * Change capitalization of WUI and introducer welcome page headings; add test for introducer welcome page. Also fix a typo in a CSS class name. fixes #1708 --- diff --git a/src/allmydata/test/test_web.py b/src/allmydata/test/test_web.py index e3920ebf..0f0cd104 100644 --- a/src/allmydata/test/test_web.py +++ b/src/allmydata/test/test_web.py @@ -1,13 +1,18 @@ import os.path, re, urllib, time import simplejson from StringIO import StringIO + from twisted.application import service from twisted.trial import unittest from twisted.internet import defer, reactor from twisted.internet.task import Clock from twisted.web import client, error, http from twisted.python import failure, log + +from foolscap.api import fireEventually, flushEventualQueue + from nevow import rend + from allmydata import interfaces, uri, webish, dirnode from allmydata.storage.shares import get_share_file from allmydata.storage_client import StorageFarmBroker @@ -32,6 +37,7 @@ from allmydata.test.no_network import GridTestMixin from allmydata.test.common_web import HTTPClientGETFactory, \ HTTPClientHEADFactory from allmydata.client import Client, SecretHolder +from allmydata.introducer import IntroducerNode # create a fake uploader/downloader, and a couple of fake dirnodes, then # create a webserver that works against them @@ -514,7 +520,7 @@ class Web(WebMixin, WebErrorMixin, testutil.StallMixin, testutil.ReallyEqualMixi def test_welcome(self): d = self.GET("/") def _check(res): - self.failUnlessIn('Welcome To Tahoe-LAFS', res) + self.failUnlessIn('Welcome to Tahoe-LAFS', res) self.failUnlessIn(FAVICON_MARKUP, res) self.s.basedir = 'web/test_welcome' @@ -3910,6 +3916,52 @@ class Web(WebMixin, WebErrorMixin, testutil.StallMixin, testutil.ReallyEqualMixi return d +class IntroducerWeb(unittest.TestCase): + def setUp(self): + self.node = None + + def tearDown(self): + d = defer.succeed(None) + if self.node: + d.addCallback(lambda ign: self.node.stopService()) + d.addCallback(flushEventualQueue) + return d + + def test_welcome(self): + basedir = "web.IntroducerWeb.test_welcome" + os.mkdir(basedir) + fileutil.write(os.path.join(basedir, "tahoe.cfg"), "[node]\nweb.port = tcp:0\n") + self.node = IntroducerNode(basedir) + self.ws = self.node.getServiceNamed("webish") + + d = fireEventually(None) + d.addCallback(lambda ign: self.node.startService()) + d.addCallback(lambda ign: self.node.when_tub_ready()) + + d.addCallback(lambda ign: self.GET("/")) + def _check(res): + self.failUnlessIn('Welcome to the Tahoe-LAFS Introducer', res) + self.failUnlessIn(FAVICON_MARKUP, res) + d.addCallback(_check) + return d + + def GET(self, urlpath, followRedirect=False, return_response=False, + **kwargs): + # if return_response=True, this fires with (data, statuscode, + # respheaders) instead of just data. + assert not isinstance(urlpath, unicode) + url = self.ws.getURL().rstrip('/') + urlpath + factory = HTTPClientGETFactory(url, method="GET", + followRedirect=followRedirect, **kwargs) + reactor.connectTCP("localhost", self.ws.getPortnum(), factory) + d = factory.deferred + def _got_data(data): + return (data, factory.status, factory.response_headers) + if return_response: + d.addCallback(_got_data) + return factory.deferred + + class Util(ShouldFailMixin, testutil.ReallyEqualMixin, unittest.TestCase): def test_load_file(self): # This will raise an exception unless a well-formed XML file is found under that name. diff --git a/src/allmydata/web/introducer.xhtml b/src/allmydata/web/introducer.xhtml index 501f78da..81873ee7 100644 --- a/src/allmydata/web/introducer.xhtml +++ b/src/allmydata/web/introducer.xhtml @@ -5,13 +5,13 @@ -

Welcome To The Tahoe-LAFS Introducer

+

Welcome to the Tahoe-LAFS Introducer

This Introducer

- +
My nodeid:
My nodeid:
My versions:
Tahoe-LAFS code imported from:
diff --git a/src/allmydata/web/welcome.xhtml b/src/allmydata/web/welcome.xhtml index b5a191e4..8a5b9aa1 100644 --- a/src/allmydata/web/welcome.xhtml +++ b/src/allmydata/web/welcome.xhtml @@ -5,7 +5,7 @@ -

Welcome To Tahoe-LAFS!

+

Welcome to Tahoe-LAFS!

This Client