Example #1
0
    def test_platform_set_data(self):
        platforms = db.platforms_list(self.env1["uuid"])
        uuid = platforms[0]["uuid"]

        self.assertTrue(db.platform_set_data(uuid))
        self.assertTrue(
            db.platform_set_data(uuid, platform_data={"platform": "data"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data"}, in_db["platform_data"])
        self.assertEqual({}, in_db["plugin_data"])

        self.assertTrue(
            db.platform_set_data(uuid, plugin_data={"plugin": "data"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data"}, in_db["platform_data"])
        self.assertEqual({"plugin": "data"}, in_db["plugin_data"])

        self.assertTrue(
            db.platform_set_data(uuid, platform_data={"platform": "data2"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data2"}, in_db["platform_data"])
        self.assertEqual({"plugin": "data"}, in_db["plugin_data"])

        self.assertFalse(db.platform_set_data(
            "non_existing", platform_data={}))
        in_db = db.platform_get(uuid)
        # just check that nothing changed after wrong uuid passed
        self.assertEqual({"platform": "data2"}, in_db["platform_data"])
Example #2
0
    def test_platform_set_data(self):
        platforms = db.platforms_list(self.env1["uuid"])
        uuid = platforms[0]["uuid"]

        self.assertTrue(db.platform_set_data(uuid))
        self.assertTrue(
            db.platform_set_data(uuid, platform_data={"platform": "data"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data"}, in_db["platform_data"])
        self.assertEqual({}, in_db["plugin_data"])

        self.assertTrue(
            db.platform_set_data(uuid, plugin_data={"plugin": "data"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data"}, in_db["platform_data"])
        self.assertEqual({"plugin": "data"}, in_db["plugin_data"])

        self.assertTrue(
            db.platform_set_data(uuid, platform_data={"platform": "data2"}))
        in_db = db.platform_get(uuid)
        self.assertEqual({"platform": "data2"}, in_db["platform_data"])
        self.assertEqual({"plugin": "data"}, in_db["plugin_data"])

        self.assertFalse(db.platform_set_data("non_existing",
                                              platform_data={}))
        in_db = db.platform_get(uuid)
        # just check that nothing changed after wrong uuid passed
        self.assertEqual({"platform": "data2"}, in_db["platform_data"])
Example #3
0
 def teet_env_create_with_platforms(self):
     platforms = [{
         "status": "ANY",
         "plugin_name": "plugin_%s@plugin" % i,
         "plugin_spec": {},
         "platform_name": "plugin"
     } for i in range(3)]
     env = db.env_create("name", "status", "descr", {}, {}, {}, platforms)
     db_platforms = db.platforms_list(env["uuid"])
     self.assertEqual(3, len(db_platforms))
Example #4
0
    def test_env_delete_cascade(self):
        platforms = [{
            "status": "ANY",
            "plugin_name": "plugin_%s@plugin" % i,
            "plugin_spec": {},
            "platform_name": "plugin"
        } for i in range(3)]
        env = db.env_create("name", "status", "descr", {}, {}, {}, platforms)
        db.env_delete_cascade(env["uuid"])

        self.assertEqual(0, len(db.env_list()))
        self.assertEqual(0, len(db.platforms_list(env["uuid"])))
Example #5
0
 def teet_env_create_with_platforms(self):
     platforms = [
         {
             "status": "ANY",
             "plugin_name": "plugin_%s@plugin" % i,
             "plugin_spec": {},
             "platform_name": "plugin"
         }
         for i in range(3)
     ]
     env = db.env_create("name", "status", "descr", {}, {}, {}, platforms)
     db_platforms = db.platforms_list(env["uuid"])
     self.assertEqual(3, len(db_platforms))
Example #6
0
 def data(self):
     """Returns full information about env including platforms."""
     self._env = db.env_get(self.uuid)
     return {
         "id": self._env["id"],
         "uuid": self._env["uuid"],
         "created_at": self._env["created_at"],
         "updated_at": self._env["updated_at"],
         "name": self._env["name"],
         "description": self._env["description"],
         "status": self._env["status"],
         "spec": copy.deepcopy(self._env["spec"]),
         "extras": copy.deepcopy(self._env["extras"]),
         "platforms": db.platforms_list(self.uuid)
     }
Example #7
0
    def test_env_delete_cascade(self):
        platforms = [
            {
                "status": "ANY",
                "plugin_name": "plugin_%s@plugin" % i,
                "plugin_spec": {},
                "platform_name": "plugin"
            }
            for i in range(3)
        ]
        env = db.env_create("name", "status", "descr", {}, {}, {}, platforms)
        db.env_delete_cascade(env["uuid"])

        self.assertEqual(0, len(db.env_list()))
        self.assertEqual(0, len(db.platforms_list(env["uuid"])))
Example #8
0
    def test_platform_set_status(self):
        platforms = db.platforms_list(self.env1["uuid"])

        self.assertRaises(exceptions.DBConflict, db.platform_set_status,
                          platforms[0]["uuid"], "OTHER", "NEW_STATUS")
        self.assertEqual("ANY",
                         db.platform_get(platforms[0]["uuid"])["status"])

        self.assertTrue(
            db.platform_set_status(platforms[0]["uuid"], "ANY", "NEW_STATUS"))
        self.assertEqual("NEW_STATUS",
                         db.platform_get(platforms[0]["uuid"])["status"])

        self.assertEqual("ANY",
                         db.platform_get(platforms[1]["uuid"])["status"])
Example #9
0
    def test_platform_set_status(self):
        platforms = db.platforms_list(self.env1["uuid"])

        self.assertRaises(
            exceptions.DBConflict,
            db.platform_set_status,
            platforms[0]["uuid"], "OTHER", "NEW_STATUS")
        self.assertEqual("ANY",
                         db.platform_get(platforms[0]["uuid"])["status"])

        self.assertTrue(db.platform_set_status(
            platforms[0]["uuid"], "ANY", "NEW_STATUS"))
        self.assertEqual("NEW_STATUS",
                         db.platform_get(platforms[0]["uuid"])["status"])

        self.assertEqual("ANY",
                         db.platform_get(platforms[1]["uuid"])["status"])
Example #10
0
    def _get_platforms(self):
        """Iterate over Envs platforms.

        :returns: Generator that returns list of tuples
                  (uuid, instance of rally.env.platform.Platform)
        """
        raw_platforms = db.platforms_list(self.uuid)
        platforms = []

        for p in raw_platforms:
            plugin_cls = platform.Platform.get(p["plugin_name"])
            platforms.append(
                plugin_cls(p["plugin_spec"],
                           uuid=p["uuid"],
                           plugin_data=p["plugin_data"],
                           platform_data=p["platform_data"],
                           status=p["status"]))

        return platforms
Example #11
0
    def _get_platforms(self):
        """Iterate over Envs platforms.

        :returns: Generator that returns list of tuples
                  (uuid, instance of rally.env.platform.Platform)
        """
        raw_platforms = db.platforms_list(self.uuid)
        platforms = []

        for p in raw_platforms:
            plugin_cls = platform.Platform.get(p["plugin_name"])
            platforms.append(
                plugin_cls(
                    p["plugin_spec"],
                    uuid=p["uuid"],
                    plugin_data=p["plugin_data"],
                    platform_data=p["platform_data"],
                    status=p["status"]
                )
            )

        return platforms
Example #12
0
 def data(self):
     """Returns full information about env including platforms."""
     self._env = db.env_get(self.uuid)
     self._env["platforms"] = db.platforms_list(self.uuid)
     return self.cached_data
Example #13
0
 def test_platform_get(self):
     for p in db.platforms_list(self.env1["uuid"]):
         self.assertEqual(p, db.platform_get(p["uuid"]))
Example #14
0
 def test_platforms_list(self):
     self.assertEqual(0, len(db.platforms_list("non_existing")))
     self.assertEqual(2, len(db.platforms_list(self.env1["uuid"])))
     self.assertEqual(3, len(db.platforms_list(self.env2["uuid"])))
Example #15
0
 def test_platform_get(self):
     for p in db.platforms_list(self.env1["uuid"]):
         self.assertEqual(p, db.platform_get(p["uuid"]))
Example #16
0
 def test_platforms_list(self):
     self.assertEqual(0, len(db.platforms_list("non_existing")))
     self.assertEqual(2, len(db.platforms_list(self.env1["uuid"])))
     self.assertEqual(3, len(db.platforms_list(self.env2["uuid"])))
Example #17
0
 def data(self):
     """Returns full information about env including platforms."""
     self._env = db.env_get(self.uuid)
     self._env["platforms"] = db.platforms_list(self.uuid)
     return self.cached_data