コード例 #1
0
class test_screenshot_from_codebuild(TestCase):
    def setUp(self):
        self.code_build = CodeBuild_Jupyter()
        self.jp = Jupyter()
        self.png_data = None

    def tearDown(self):
        if self.png_data:
            png_file = '/tmp/lambda_png_file.png'
            with open(png_file, "wb") as fh:
                fh.write(base64.decodebytes(self.png_data.encode()))
            Dev.pprint("Png data with size {0} saved to {1}".format(
                len(self.png_data), png_file))

    def test_get_screenshot_using_local_chrome(self):
        url, token = self.code_build.get_server_details_from_logs()
        self.jp.set_url(url).set_token(token)
        self.jp.login()
        #self.jp.open('aaa')
        self.png_file = self.jp.screenshot()
        Dev.pprint(self.png_file)

    def test_get_screenshot_using_lambda(self):
        self.aws_lambda = Lambda_Package(
            'osbot_jupyter.lambdas.jupyter_server')
        url, token = self.code_build.get_server_details_from_logs()
        #print(url,token)
        #return
        notebook = 'test-1'
        payload = {'url': url, 'token': token, 'notebook': notebook}
        self.png_data = self.aws_lambda.invoke(payload)
コード例 #2
0
 def get_active_server_details(self):
     build_id = self.get_active_build_id()
     if build_id is None:
         return None
         #self.start_build_and_wait_for_jupyter_load()
         #build_id = self.get_active_build_id()
     code_build = CodeBuild_Jupyter(build_id)
     return code_build.get_server_details_from_logs()
コード例 #3
0
class test_CodeBuild_Jupyter(Test_Helper):
    def setUp(self):
        super().setUp()
        self.result = None
        self.build_id = 'OSBot-Jupyter:baea0626-3ad2-4e47-a41e-ff82ce5865ad'
        self.api      = CodeBuild_Jupyter(build_id = self.build_id)


    def tearDown(self):
        if self.result:
            Dev.pprint(self.result)

    def test_start_new_build(self):
        self.build_id = CodeBuild_Jupyter_Helper().start_build_and_wait_for_jupyter_load().build_id
        print(self.build_id)
        self.api = CodeBuild_Jupyter(build_id=self.build_id)
        self.result = self.api.url()


    def test_build_info(self):
        self.result = self.api.build_info()

    def test_build_status__build_phase(self):
        assert self.api.build_status() == 'IN_PROGRESS'
        assert self.api.build_phase() == 'BUILD'

    def test_build_log_messages(self):
        messages = self.api.build_log_messages()
        assert 'Waiting for agent ping' in messages.pop(0)

    def test_get_server_details_from_logs(self):
        self.result = self.api.get_server_details_from_logs()

    def test_build_stop(self):
        assert self.api.build_stop() == 'STOPPED'

    def test_url(self):
        self.result = self.api.url()