Ejemplo n.º 1
0
 def setUp(self):
     super(FacadeCheckerTest, self).setUp()
     factory = FluidinfoSessionFactory('API-9000')
     transact = Transact(self.threadPool)
     createSystemData()
     self.checker = FacadeChecker()
     self.checker.facadeClient = Facade(transact, factory)
Ejemplo n.º 2
0
 def setUp(self):
     super(SecureRecentActivityAPIWithUserRoleTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     self.user = getUser(u'user')
     self.recentActivity = SecureRecentActivityAPI(self.user)
     self.permissions = CachingPermissionAPI(self.user)
Ejemplo n.º 3
0
 def testCreateUsers(self):
     """L{createSystemData} creates all the system L{User}s needed."""
     createSystemData()
     self.assertUser(u'fluiddb', u'FluidDB administrator',
                     u'*****@*****.**', Role.SUPERUSER)
     self.assertUser(u'anon', u'FluidDB anonymous user',
                     u'*****@*****.**', Role.ANONYMOUS)
Ejemplo n.º 4
0
 def testCreateUsers(self):
     """L{createSystemData} creates all the system L{User}s needed."""
     createSystemData()
     self.assertUser(u'fluiddb', u'FluidDB administrator',
                     u'*****@*****.**', Role.SUPERUSER)
     self.assertUser(u'anon', u'FluidDB anonymous user',
                     u'*****@*****.**', Role.ANONYMOUS)
Ejemplo n.º 5
0
 def setUp(self):
     super(SecureRecentActivityAPIWithUserRoleTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     self.user = getUser(u'user')
     self.recentActivity = SecureRecentActivityAPI(self.user)
     self.permissions = CachingPermissionAPI(self.user)
Ejemplo n.º 6
0
    def testCheckIntegrityChecksErrorInAllRows(self):
        """
        L{checkIntegrity} should check for integrity errors in L{Namespace}s,
        L{Tag}s, L{User}s, L{AboutTagValue}s and L{TagValue}s.
        """
        createSystemData()
        [(userObjectID, _)] = UserAPI().create([(u'user', u'pass', u'Name',
                                                 u'*****@*****.**')])
        user = getUser(u'user')
        result = NamespaceAPI(user).create([(u'user/namespace', u'description')
                                            ])
        [(namespaceObjectID, _)] = result
        [(tagObjectID, _)] = TagAPI(user).create([(u'user/tag', u'description')
                                                  ])
        objectID1 = uuid4()
        objectID2 = uuid4()
        createAboutTagValue(objectID1, u'Bad about tag')
        TagValueAPI(user).set({objectID2: {u'fluiddb/about': 'about value'}})

        TagValueAPI(user).delete([(userObjectID, u'fluiddb/users/username')])
        TagValueAPI(user).delete([(namespaceObjectID,
                                   u'fluiddb/namespaces/path')])
        TagValueAPI(user).delete([(tagObjectID, u'fluiddb/tags/description')])
        checkIntegrity()

        self.assertEqual(
            "Integrity Error in namespace u'user/namespace': "
            'Path tag is missing.\n'
            "Integrity Error in tag u'user/tag': Description tag is missing.\n"
            "Integrity Error in user u'user': Username tag is missing.\n"
            "Integrity Error in object %s: AboutTagValue doesn't have an "
            'associated TagValue.\n'
            "Integrity Error in object %s: fluiddb/about TagValue doesn't "
            'have an associated AboutTagValue.\n' % (objectID1, objectID2),
            self.log.getvalue())
Ejemplo n.º 7
0
 def testCreateFluidinfoUser(self):
     """L{bootstrapWebAdminData} creates a C{fluidinfo.com} user."""
     createSystemData()
     bootstrapWebAdminData()
     webuser = getUser(u'fluidinfo.com')
     self.assertNotIdentical(None, webuser)
     self.assertEqual(u'Fluidinfo website', webuser.fullname)
     self.assertEqual(Role.USER_MANAGER, webuser.role)
Ejemplo n.º 8
0
 def setUp(self):
     super(SecurePermissionAPIWithNormalUserTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     user = getUser(u'username')
     TagAPI(user).create([(u'username/tag', u'description')])
     self.permissions = SecurePermissionAPI(user)
Ejemplo n.º 9
0
 def setUp(self):
     super(RootResourceTest, self).setUp()
     factory = FluidinfoSessionFactory('API-9000')
     transact = Transact(self.threadPool)
     createSystemData()
     self.checker = AnonymousChecker()
     self.checker.facadeClient = Facade(transact, factory)
     getConfig().set('service', 'allow-anonymous-access', 'False')
Ejemplo n.º 10
0
 def setUp(self):
     super(SecureCommentAPIWithUserRoleTest, self).setUp()
     createSystemData()
     UserAPI().create([
         (u'username', u'password', u'User', u'*****@*****.**'),
         (u'fluidinfo.com', u'secret', u'Fluidinfo', u'*****@*****.**')])
     self.user = getUser(u'username')
     self.comments = SecureCommentAPI(self.user)
Ejemplo n.º 11
0
 def setUp(self):
     super(SecureTagAPIWithNormalUserTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'user', u'password', u'User', u'*****@*****.**')
                       ])
     self.user = getUser(u'user')
     self.permissions = CachingPermissionAPI(self.user)
     self.tags = SecureTagAPI(self.user)
Ejemplo n.º 12
0
 def setUp(self):
     super(DataImportHandlerTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     self.user = getUser(u'user')
     self.objects = ObjectAPI(self.user)
     self.values = TagValueAPI(self.user)
     self.index = ObjectIndex(self.client)
Ejemplo n.º 13
0
 def setUp(self):
     super(SecureTagAPIWithNormalUserTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'user', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'user')
     self.permissions = CachingPermissionAPI(self.user)
     self.tags = SecureTagAPI(self.user)
Ejemplo n.º 14
0
 def setUp(self):
     super(RootResourceTest, self).setUp()
     factory = FluidinfoSessionFactory('API-9000')
     transact = Transact(self.threadPool)
     createSystemData()
     self.checker = AnonymousChecker()
     self.checker.facadeClient = Facade(transact, factory)
     getConfig().set('service', 'allow-anonymous-access', 'False')
Ejemplo n.º 15
0
 def setUp(self):
     super(SecurePermissionAPIWithNormalUserTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     user = getUser(u'username')
     TagAPI(user).create([(u'username/tag', u'description')])
     self.permissions = SecurePermissionAPI(user)
Ejemplo n.º 16
0
 def setUp(self):
     super(RecentObjectsActivityResourceTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     factory = FluidinfoSessionFactory('API-9000')
     self.transact = Transact(self.threadPool)
     self.facade = Facade(self.transact, factory)
Ejemplo n.º 17
0
 def setUp(self):
     super(SecureObjectAPIWithUserRoleTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     TagAPI(self.user).create([(u'username/tag', u'description')])
     self.permissions = CachingPermissionAPI(self.user)
     self.objects = SecureObjectAPI(self.user)
Ejemplo n.º 18
0
 def setUp(self):
     super(RecentObjectsActivityResourceTest, self).setUp()
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     factory = FluidinfoSessionFactory('API-9000')
     self.transact = Transact(self.threadPool)
     self.facade = Facade(self.transact, factory)
Ejemplo n.º 19
0
 def setUp(self):
     super(FacadeNamespaceTest, self).setUp()
     createSystemData()
     self.transact = Transact(self.threadPool)
     factory = FluidinfoSessionFactory('API-9000')
     self.facade = Facade(self.transact, factory)
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = PermissionAPI(self.user)
Ejemplo n.º 20
0
 def testCreateActivationTokenTag(self):
     """
     L{bootstrapWebAdminData} creates a C{fluiddb/users/activation-token}
     tag.
     """
     createSystemData()
     bootstrapWebAdminData()
     superuser = getUser(u'fluiddb')
     result = TagAPI(superuser).get([u'fluiddb/users/activation-token'])
     self.assertIn(u'fluiddb/users/activation-token', result)
Ejemplo n.º 21
0
 def setUp(self):
     super(VerifyUserPasswordResourceTest, self).setUp()
     self.transact = Transact(self.threadPool)
     createSystemData()
     UserAPI().create([
         (u'fluidinfo.com', 'secret', u'Fluidinfo', u'*****@*****.**'),
         (u'user', u'pass', u'Peter Parker', u'*****@*****.**')])
     consumer = getUser(u'anon')
     OAuthConsumerAPI().register(consumer)
     self.store.commit()
Ejemplo n.º 22
0
 def setUp(self):
     super(FacadeTagMixinTest, self).setUp()
     createSystemData()
     self.transact = Transact(self.threadPool)
     factory = FluidinfoSessionFactory('API-9000')
     self.facade = Facade(self.transact, factory)
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = CachingPermissionAPI(self.user)
Ejemplo n.º 23
0
 def setUp(self):
     super(FacadePermissionTest, self).setUp()
     self.transact = Transact(FakeThreadPool())
     factory = FluidinfoSessionFactory('API-9000')
     self.facade = Facade(self.transact, factory)
     createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     user = getUser(u'username')
     self.permissions = CachingPermissionAPI(user)
     SecureTagAPI(user).create([(u'username/tag', u'description')])
Ejemplo n.º 24
0
 def setUp(self):
     super(FluidinfoGlobalTrendingHashtagTest, self).setUp()
     createSystemData()
     UserAPI().create([
         (u'username', u'password', u'User', u'*****@*****.**'),
         (u'fluidinfo.com', u'secret', u'Fluidinfo', u'*****@*****.**')])
     self.user = getUser(u'username')
     self.comments = CommentAPI(self.user)
     objectAPI = ObjectAPI(self.user)
     self.fluidinfObjectID = objectAPI.create(u'fluidinfo.com')
     self.tag = u'fluidinfo.com/trending-hashtags'
Ejemplo n.º 25
0
 def setUp(self):
     super(FluidinfoGlobalTrendingHashtagTest, self).setUp()
     createSystemData()
     UserAPI().create([
         (u'username', u'password', u'User', u'*****@*****.**'),
         (u'fluidinfo.com', u'secret', u'Fluidinfo', u'*****@*****.**')
     ])
     self.user = getUser(u'username')
     self.comments = CommentAPI(self.user)
     objectAPI = ObjectAPI(self.user)
     self.fluidinfObjectID = objectAPI.create(u'fluidinfo.com')
     self.tag = u'fluidinfo.com/trending-hashtags'
Ejemplo n.º 26
0
def bootstrapSystemData(store):
    """Create system data in a database.

    @param store: The C{Store} for the database.
    """
    try:
        createSystemData()
    except:
        transaction.abort()
        raise
    else:
        transaction.commit()
Ejemplo n.º 27
0
def bootstrapSystemData(store):
    """Create system data in a database.

    @param store: The C{Store} for the database.
    """
    try:
        createSystemData()
    except:
        transaction.abort()
        raise
    else:
        transaction.commit()
Ejemplo n.º 28
0
 def testCreateNamespaces(self):
     """L{createSystemData} creates all the system L{Namespace}s needed."""
     createSystemData()
     self.assertNamespace(u'fluiddb',
                          u"FluidDB admin user's top-level namespace.")
     self.assertNamespace(u'anon',
                          u"FluidDB anonymous user's top-level namespace.")
     self.assertNamespace(u'fluiddb/users',
                          u'Holds tags that concern FluidDB users.')
     self.assertNamespace(u'fluiddb/namespaces',
                          u'Holds information about namespaces.')
     self.assertNamespace(u'fluiddb/tags', u'Holds information about tags.')
Ejemplo n.º 29
0
 def testCreateTags(self):
     """L{createSystemData} creates all the system L{Tag}s needed."""
     createSystemData()
     self.assertTag(u'fluiddb/users/username',
                    u"Holds FluidDB users' usernames.")
     self.assertTag(u'fluiddb/users/name', u"Holds FluidDB users' names.")
     self.assertTag(u'fluiddb/users/email',
                    u"Holds FluidDB users' email addresses.")
     self.assertTag(u'fluiddb/namespaces/path', u'The path of a namespace.')
     self.assertTag(u'fluiddb/namespaces/description',
                    u'Describes a namespace.')
     self.assertTag(u'fluiddb/tags/path', u'The path of a tag.')
     self.assertTag(u'fluiddb/tags/description', u'Describes a tag.')
Ejemplo n.º 30
0
 def testCreateNamespaces(self):
     """L{createSystemData} creates all the system L{Namespace}s needed."""
     createSystemData()
     self.assertNamespace(u'fluiddb',
                          u"FluidDB admin user's top-level namespace.")
     self.assertNamespace(u'anon',
                          u"FluidDB anonymous user's top-level namespace.")
     self.assertNamespace(u'fluiddb/users',
                          u'Holds tags that concern FluidDB users.')
     self.assertNamespace(u'fluiddb/namespaces',
                          u'Holds information about namespaces.')
     self.assertNamespace(u'fluiddb/tags',
                          u'Holds information about tags.')
Ejemplo n.º 31
0
 def testActivationTokenTagPermission(self):
     """
     L{bootstrapWebAdminData} creates a C{fluiddb/users/activation-token}
     tag with write permissions for the C{fluidinfo.com} user.
     """
     createSystemData()
     bootstrapWebAdminData()
     superuser = getUser(u'fluiddb')
     pathAndOperation = (u'fluiddb/users/activation-token',
                         Operation.WRITE_TAG_VALUE)
     result = PermissionAPI(superuser).get([pathAndOperation])
     policy, exceptions = result[pathAndOperation]
     self.assertEqual(Policy.CLOSED, policy)
     self.assertEqual([u'fluidinfo.com'], exceptions)
Ejemplo n.º 32
0
 def testUser(self):
     """
     The L{AuthenticationPlugin.user} property returns the L{User} instance
     for the session.
     """
     createSystemData()
     [(objectID, username)] = UserAPI().create(
         [(u'user', u'secret', u'User', u'*****@*****.**')])
     session = FluidinfoSession('id', self.transact)
     session.start()
     try:
         session.auth.login(username, objectID)
     finally:
         session.stop()
     self.assertEqual(u'user', session.auth.user.username)
Ejemplo n.º 33
0
 def setUp(self):
     super(FacadeUserMixinTest, self).setUp()
     self.transact = Transact(self.threadPool)
     factory = FluidinfoSessionFactory('API-9000')
     self.facade = Facade(self.transact, factory)
     system = createSystemData()
     self.admin = system.users[u'fluiddb']
Ejemplo n.º 34
0
 def setUp(self):
     super(SecureTagValueAPIWithSuperuserRoleTest, self).setUp()
     system = createSystemData()
     self.superuser = system.users[u'fluiddb']
     TagAPI(self.superuser).create([(u'fluiddb/tag', u'description')])
     self.tagValues = SecureTagValueAPI(self.superuser)
     self.permissions = CachingPermissionAPI(self.superuser)
Ejemplo n.º 35
0
 def setUp(self):
     super(DatasetImporterTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     user = getUser(u'user')
     self.objects = SecureObjectAPI(user)
     self.values = SecureTagValueAPI(user)
Ejemplo n.º 36
0
 def testUser(self):
     """
     The L{AuthenticationPlugin.user} property returns the L{User} instance
     for the session.
     """
     createSystemData()
     [(objectID, username)] = UserAPI().create([
         (u'user', u'secret', u'User', u'*****@*****.**')
     ])
     session = FluidinfoSession('id', self.transact)
     session.start()
     try:
         session.auth.login(username, objectID)
     finally:
         session.stop()
     self.assertEqual(u'user', session.auth.user.username)
Ejemplo n.º 37
0
 def setUp(self):
     super(CachingObjectAPITest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'user', u'password', u'User', u'*****@*****.**')
                       ])
     self.user = getUser(u'user')
     self.objects = CachingObjectAPI(self.user)
Ejemplo n.º 38
0
 def setUp(self):
     super(SuperuserPermissionCheckerTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = PermissionAPI(self.user)
Ejemplo n.º 39
0
 def setUp(self):
     super(CachingAPIFactoryTest, self).setUp()
     self.system = createSystemData()
     CachingUserAPI().create(
         [(u'user', u'secret', u'User', u'*****@*****.**')])
     self.user = cachingGetUser(u'user')
     self.factory = CachingAPIFactory()
Ejemplo n.º 40
0
 def setUp(self):
     super(SecurePermissionAPIWithBrokenCacheTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = SecurePermissionAPI(self.user)
Ejemplo n.º 41
0
 def setUp(self):
     super(SuperuserPermissionCheckerTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = PermissionAPI(self.user)
Ejemplo n.º 42
0
 def setUp(self):
     super(SecureObjectAPIWithBrokenCacheTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'user', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'user')
     self.objects = SecureObjectAPI(self.user)
Ejemplo n.º 43
0
 def setUp(self):
     super(CachingPermissionCheckerAPITest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.api = CachingPermissionCheckerAPI()
Ejemplo n.º 44
0
 def setUp(self):
     super(DatasetImporterTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     user = getUser(u'user')
     self.objects = SecureObjectAPI(user)
     self.values = SecureTagValueAPI(user)
Ejemplo n.º 45
0
 def setUp(self):
     super(CachingPermissionCheckerAPITest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.api = CachingPermissionCheckerAPI()
Ejemplo n.º 46
0
 def setUp(self):
     super(CachingPermissionAPIWithBrokenCacheTest, self).setUp()
     self.system = createSystemData()
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
     self.user = getUser(u'username')
     self.permissions = CachingPermissionAPI(self.user)
Ejemplo n.º 47
0
 def setUp(self):
     super(SecureRecentActivityAPIWithAnonymousRoleTest, self).setUp()
     system = createSystemData()
     self.anon = system.users[u'anon']
     UserAPI().create([(u'user', u'secret', u'User', u'*****@*****.**')])
     self.user = getUser(u'user')
     self.recentActivity = SecureRecentActivityAPI(self.anon)
     self.permissions = CachingPermissionAPI(self.user)
Ejemplo n.º 48
0
 def setUp(self):
     super(SecureObjectAPIWithSuperuserRoleTest, self).setUp()
     system = createSystemData()
     self.superuser = system.users[u'fluiddb']
     self.permissions = CachingPermissionAPI(self.superuser)
     self.objects = SecureObjectAPI(self.superuser)
     UserAPI().create([(u'username', u'password', u'User',
                        u'*****@*****.**')])
Ejemplo n.º 49
0
 def testCreateTags(self):
     """L{createSystemData} creates all the system L{Tag}s needed."""
     createSystemData()
     self.assertTag(u'fluiddb/users/username',
                    u"Holds FluidDB users' usernames.")
     self.assertTag(u'fluiddb/users/name',
                    u"Holds FluidDB users' names.")
     self.assertTag(u'fluiddb/users/email',
                    u"Holds FluidDB users' email addresses.")
     self.assertTag(u'fluiddb/namespaces/path',
                    u'The path of a namespace.')
     self.assertTag(u'fluiddb/namespaces/description',
                    u'Describes a namespace.')
     self.assertTag(u'fluiddb/tags/path',
                    u'The path of a tag.')
     self.assertTag(u'fluiddb/tags/description',
                    u'Describes a tag.')
Ejemplo n.º 50
0
 def setUp(self):
     super(TagValueIntegrityCheckerTest, self).setUp()
     self.system = createSystemData()
     self.user = createUser(u'user', u'pass', u'Name', u'*****@*****.**')
     self.parent = createNamespace(self.user, u'user', None)
     self.user.namespaceID = self.parent.id
     self.checker = TagValueIntegrityChecker()
     self.superuser = self.system.users[u'fluiddb']