コード例 #1
0
 def test_create_task(self, mock_mkdir, mock_dir):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     with self.assertRaises(AttributeError):
         session.create_task(None)
     with self.assertRaises(AttributeError):
         session.create_task("abc")
     template = mock.create_autospec(submission.Submission,
                                     is_template=True)
     with self.assertRaises(ValueError):
         session.create_task(template)
     del_sub = mock.create_autospec(submission.Submission,
                                    is_template=False,
                                    is_deleted=True)
     with self.assertRaises(ValueError):
         session.create_task(del_sub)
     sub = mock.create_autospec(submission.Submission,
                                is_deleted=False,
                                is_template=False,
                                priority=const.PRIORITY_0,
                                uid="123",
                                payload={},
                                system_code=spark.SPARK_SYSTEM_CODE)
     sub.name = "abc"
     mock_dir.return_value = "/mock-work-dir/123"
     task = session.create_task(sub)
     self.assertEqual(task.master_url, self.master_url)
     self.assertEqual(task.web_url, self.web_url)
     self.assertEqual(task.name, "abc")
     self.assertEqual(task.working_directory, "/mock-work-dir/123")
     mock_mkdir.assert_called_once_with("./work/123", 0775)
     mock_dir.assert_called_once_with("./work/123")
コード例 #2
0
 def test_create_task_fail_sys_code(self, mock_mkdir, mock_dir):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     sub = mock.create_autospec(submission.Submission,
                                is_template=True,
                                system_code="ABC")
     with self.assertRaises(ValueError):
         session.create_task(sub)
     self.assertEqual(mock_mkdir.call_count, 0)
     self.assertEqual(mock_dir.call_count, 0)
コード例 #3
0
 def test_status(self, mock_applications):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     mock_applications.return_value = None
     self.assertEqual(session.status(), const.SYSTEM_UNAVAILABLE)
     mock_applications.return_value = []
     self.assertEqual(session.status(), const.SYSTEM_AVAILABLE)
     mock_applications.return_value = [{
         "completed": True
     }, {
         "completed": True
     }]
     self.assertEqual(session.status(), const.SYSTEM_AVAILABLE)
     mock_applications.return_value = [{
         "completed": True
     }, {
         "completed": False
     }]
     self.assertEqual(session.status(), const.SYSTEM_BUSY)
コード例 #4
0
 def test_init(self):
     with self.assertRaises(StandardError):
         spark.SparkSession("abc", self.web_url, self.working_dir)
     with self.assertRaises(StandardError):
         spark.SparkSession(self.master_url, "abc", self.working_dir)
     with self.assertRaises(ValueError):
         spark.SparkSession(self.master_url,
                            self.web_url,
                            self.working_dir,
                            num_executors="abc")
     with self.assertRaises(ValueError):
         spark.SparkSession(self.master_url,
                            self.web_url,
                            self.working_dir,
                            num_executors=1,
                            timeout="abc")
     with self.assertRaises(AttributeError):
         spark.SparkSession(self.master_url,
                            self.web_url,
                            self.working_dir,
                            num_executors=0)
     with self.assertRaises(AttributeError):
         spark.SparkSession(self.master_url,
                            self.web_url,
                            self.working_dir,
                            num_executors=1,
                            timeout=0.0)
     # valid instance
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     self.assertEqual(session.master_url, self.master_url)
     self.assertEqual(session.web_url, self.web_url)
     self.assertEqual(session.working_dir, self.working_dir)
     self.assertEqual(session.num_executors, 1)
     self.assertEqual(session.timeout, 1.0)
     self.assertNotEqual(session.scheduler, None)
コード例 #5
0
 def test_scheduler(self):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     self.assertTrue(isinstance(session.scheduler, scheduler.Scheduler))
コード例 #6
0
 def test_system_uri(self):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     self.assertEqual(session.system_uri().url, self.web_url)
     self.assertEqual(session.system_uri().alias, "Spark Web UI")
コード例 #7
0
 def test_system_code(self):
     session = spark.SparkSession(self.master_url, self.web_url,
                                  self.working_dir)
     self.assertEqual(session.system_code(), spark.SPARK_SYSTEM_CODE)