def test_loading_and_storing_model_in_kvs(self):
        path = os.path.join(test.SCHEMA_DIR, TEST_FILE)
        vulnerability.load_vulnerability_model(1234, path)
        model = vulnerability.load_vuln_model_from_kvs(1234)

        self.assertEqual(NO_OF_CURVES_IN_TEST_FILE, len(model))

        expected_curve = shapes.Curve(
            [
                (5.0, (0.00, 0.3)),
                (5.5, (0.00, 0.3)),
                (6.0, (0.00, 0.3)),
                (6.5, (0.00, 0.3)),
                (7.0, (0.00, 0.3)),
                (7.5, (0.01, 0.3)),
                (8.0, (0.06, 0.3)),
                (8.5, (0.18, 0.3)),
                (9.0, (0.36, 0.3)),
                (9.5, (0.36, 0.3)),
                (10.0, (0.36, 0.3)),
            ]
        )

        self.assertEqual(expected_curve, model["PK"])
        self.assertEqual(expected_curve, model["IR"])
    def setUp(self):
        # get random ID as job_id
        self.job_id = str(uuid.uuid4())

        # load vulnerability and write to memcache
        vulnerability.load_vulnerability_model(self.job_id,
            os.path.join(test.DATA_DIR, TEST_FILE))

        self.vulnerability_curves = \
            vulnerability.load_vuln_curves_from_kvs(self.job_id)
Exemplo n.º 3
0
    def store_vulnerability_model(self):
        """ load vulnerability and write to kvs """
        path = os.path.join(
            self.calc_proxy.base_path,
            self.calc_proxy.params["VULNERABILITY"])
        vulnerability.load_vulnerability_model(self.calc_proxy.job_id, path)

        if self.is_benefit_cost_ratio_mode():
            path = os.path.join(
                self.calc_proxy.base_path,
                self.calc_proxy.params["VULNERABILITY_RETROFITTED"])
            vulnerability.load_vulnerability_model(
                self.calc_proxy.job_id, path, retrofitted=True)
Exemplo n.º 4
0
    def store_vulnerability_model(self):
        """ load vulnerability and write to kvs """
        path = os.path.join(self.job_ctxt.base_path,
                            self.job_ctxt.params["VULNERABILITY"])
        vulnerability.load_vulnerability_model(self.job_ctxt.job_id, path)

        if self.is_benefit_cost_ratio_mode():
            path = os.path.join(
                self.job_ctxt.base_path,
                self.job_ctxt.params["VULNERABILITY_RETROFITTED"])
            vulnerability.load_vulnerability_model(self.job_ctxt.job_id,
                                                   path,
                                                   retrofitted=True)
    def test_loading_and_storing_model_in_kvs(self):
        path = os.path.join(test.SCHEMA_DIR, TEST_FILE)
        vulnerability.load_vulnerability_model(1234, path)
        model = vulnerability.load_vuln_model_from_kvs(1234)

        self.assertEqual(NO_OF_CURVES_IN_TEST_FILE, len(model))

        expected_curve = shapes.Curve([(5.0, (0.00, 0.3)), (5.5, (0.00, 0.3)),
                                       (6.0, (0.00, 0.3)), (6.5, (0.00, 0.3)),
                                       (7.0, (0.00, 0.3)), (7.5, (0.01, 0.3)),
                                       (8.0, (0.06, 0.3)), (8.5, (0.18, 0.3)),
                                       (9.0, (0.36, 0.3)), (9.5, (0.36, 0.3)),
                                       (10.0, (0.36, 0.3))])

        self.assertEqual(expected_curve, model["PK"])
        self.assertEqual(expected_curve, model["IR"])
    def test_loading_and_storing_model_in_kvs(self):
        path = os.path.join(helpers.SCHEMA_DIR, TEST_FILE)
        vulnerability.load_vulnerability_model(1234, path)
        model = vulnerability.load_vuln_model_from_kvs(1234)

        self.assertEqual(NO_OF_CURVES_IN_TEST_FILE, len(model))

        exp_imls = [5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0]
        exp_loss_ratios = [0.00, 0.00, 0.00, 0.00, 0.00, 0.01, 0.06, 0.18,
            0.36, 0.36, 0.36]
        exp_covs = [0.3] * 11
        expected_curve = shapes.VulnerabilityFunction(exp_imls,
            exp_loss_ratios, exp_covs)

        self.assertEqual(expected_curve, model["PK"])
        self.assertEqual(expected_curve, model["IR"])
Exemplo n.º 7
0
    def test_loading_and_storing_model_in_kvs(self):
        path = os.path.join(helpers.SCHEMA_DIR, TEST_FILE)
        vulnerability.load_vulnerability_model(1234, path)
        model = vulnerability.load_vuln_model_from_kvs(1234)

        self.assertEqual(NO_OF_CURVES_IN_TEST_FILE, len(model))

        exp_imls = [5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0]
        exp_loss_ratios = [
            0.00, 0.00, 0.00, 0.00, 0.00, 0.01, 0.06, 0.18, 0.36, 0.36, 0.36
        ]
        exp_covs = [0.3] * 11
        expected_curve = shapes.VulnerabilityFunction(exp_imls,
                                                      exp_loss_ratios,
                                                      exp_covs)

        self.assertEqual(expected_curve, model["PK"])
        self.assertEqual(expected_curve, model["IR"])
Exemplo n.º 8
0
 def store_vulnerability_model(self):
     """ load vulnerability and write to kvs """
     vulnerability.load_vulnerability_model(self.job_id,
         os.path.join(self.base_path, self.params["VULNERABILITY"]))
Exemplo n.º 9
0
 def store_vulnerability_model(self):
     """ load vulnerability and write to kvs """
     vulnerability.load_vulnerability_model(self.id,
         "%s/%s" % (self.base_path, self.params["VULNERABILITY"]))