Пример #1
0
    def setUpEndpoint(self):
        self.master = fakemaster.make_master(wantMq=True,
                                             wantDb=True,
                                             wantData=True,
                                             testcase=self)
        self.db = self.master.db
        self.mq = self.master.mq
        self.data = self.master.data
        self.matcher = pathmatch.Matcher()

        rtype = self.rtype = self.resourceTypeClass(self.master)
        setattr(self.data.rtypes, rtype.name, rtype)

        self.ep = self.endpointClass(rtype, self.master)

        # this usually fails when a single-element pathPattern does not have a
        # trailing comma
        pathPatterns = self.ep.pathPatterns.split()
        for pp in pathPatterns:
            if pp == '/':
                continue
            if not pp.startswith('/') or pp.endswith('/'):
                raise AssertionError("invalid pattern %r" % (pp, ))
        pathPatterns = [tuple(pp.split('/')[1:]) for pp in pathPatterns]
        for pp in pathPatterns:
            self.matcher[pp] = self.ep

        self.pathArgs = [
            set([arg.split(':', 1)[1] for arg in pp if ':' in arg])
            for pp in pathPatterns if pp is not None
        ]
Пример #2
0
    def __init__(self, master):
        self.setName('data')
        self.master = master

        self.matcher = pathmatch.Matcher()
        self.rootLinks = []  # links from the root of the API
        self._setup()
Пример #3
0
    def __init__(self):

        self.matcher = pathmatch.Matcher()
        self.rootLinks = []  # links from the root of the API
Пример #4
0
 def setUp(self):
     self.m = pathmatch.Matcher()