This repository has been archived on 2023-11-05. You can view files and clone it, but cannot push or open issues or pull requests.
wasm-micro-runtime/test-tools/component-test/suites/01-life-cycle/suite_setup.py

57 lines
1.9 KiB
Python
Raw Normal View History

#
# Copyright (C) 2019 Intel Corporation. All rights reserved.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#
import os
import shutil
import types
import time
import glob
from framework.test_api import *
from framework.test_utils import *
from harness.harness_api import *
from framework.suite import *
class CTestSuite(CTestSuiteBase):
setup_path = ""
def __init__(self, name, suite_path, run_path):
CTestSuiteBase.__init__(self, name, suite_path, run_path)
def on_suite_setup(self):
global setup_path
setup_path = os.getcwd()
cases = os.listdir(self.suite_path + "/cases/")
cases.sort()
if api_get_value("rebuild", False):
path_tmp = os.getcwd()
os.chdir(self.suite_path + "/test-app")
os.system(self.suite_path + "/test-app" + "/build.sh")
os.chdir(path_tmp)
os.makedirs(self.run_path + "/test-app")
for case in cases:
if case != "__init__.pyc" and case != "__init__.py":
os.makedirs(self.run_path + "/" + case)
#copy each case's host_tool, simple, wasm files, start/stop scripts to the run directory,
shutil.copy(setup_path + "/../../samples/simple/out/simple", self.run_path + "/" + case)
shutil.copy(setup_path + "/../../samples/simple/out/host_tool", self.run_path + "/" + case)
for file in glob.glob(self.suite_path + "/test-app/" + "/*.wasm"):
shutil.copy(file, self.run_path + "/test-app")
shutil.copy(self.suite_path + "/tools/product/start.sh", self.run_path + "/" + case)
shutil.copy(self.suite_path + "/tools/product/stop.sh", self.run_path + "/" + case)
os.chdir(self.run_path)
return True, 'OK'
def on_suite_cleanup(self):
global setup_path
os.chdir(setup_path)
api_log("stopping env..")
return True, 'OK'