diff options
author | Edan Binshtok <eb578m@intl.att.com> | 2017-10-04 09:33:23 +0300 |
---|---|---|
committer | Edan Binshtok <eb578m@intl.att.com> | 2017-10-04 09:36:04 +0300 |
commit | f8907f0c4fc0ba4bb97a1d636a50c5b40c2642f2 (patch) | |
tree | 3d04d86910c93e42c055e5ed699ab1919482d5be /services/session.py | |
parent | 733e00df0a6fa19dd92ec7392966340345dd1885 (diff) |
Initial seed
Initial upload of django test framework
Change-Id: I643a7f4efc52cfafe4cc6d92e3178f36a0c1837c
Issue-Id: VVP-1
Signed-off-by: Edan Binshtok <eb578m@intl.att.com>
Diffstat (limited to 'services/session.py')
-rw-r--r-- | services/session.py | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/services/session.py b/services/session.py new file mode 100644 index 0000000..174f54b --- /dev/null +++ b/services/session.py @@ -0,0 +1,106 @@ + +# ============LICENSE_START========================================== +# org.onap.vvp/test-engine +# =================================================================== +# Copyright © 2017 AT&T Intellectual Property. All rights reserved. +# =================================================================== +# +# Unless otherwise specified, all software contained herein is licensed +# under the Apache License, Version 2.0 (the “License”); +# you may not use this software except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# +# +# Unless otherwise specified, all documentation contained herein is licensed +# under the Creative Commons License, Attribution 4.0 Intl. (the “License”); +# you may not use this documentation except in compliance with the License. +# You may obtain a copy of the License at +# +# https://creativecommons.org/licenses/by/4.0/ +# +# Unless required by applicable law or agreed to in writing, documentation +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# ============LICENSE_END============================================ +# +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +from selenium import webdriver + + +class SessionSingletone(): + positive_wait_until_retires = 60 + positive_wait_until_time_pause = 0.5 + positive_wait_until_time_pause_long = 1.5 + positive_wait_until_implicit_time = 10 + positive_timeout = 10 + + negative_wait_until_retires = 5 + negative_wait_until_time_pause = 0.5 + negative_wait_until_implicit_time = 0.5 + negative_timeout = 5 + + errorCounter = 0 + errorList = "" + createTemplatecount = False + + def __init__(self): + self.wait_until_retires = self.positive_wait_until_retires + self.wait_until_time_pause = self.positive_wait_until_time_pause + self.wait_until_time_pause_long = self.positive_wait_until_time_pause_long + self.wait_until_implicit_time = self.positive_wait_until_implicit_time + self.test = '123' + self.ice_driver = None + + def setup_driver(self): + self.ice_driver = webdriver.Firefox() + return self.ice_driver + + def get_driver(self): + return self.ice_driver + + def close_driver(self): + self.ice_driver.quit() + self.ice_driver = None + + def start_negative(self): + """Changing parameters to reduce negative tests run-time""" + self.wait_until_retires = self.negative_wait_until_retires + self.wait_until_time_pause = self.negative_wait_until_time_pause + self.wait_until_implicit_time = self.negative_wait_until_implicit_time + self.timeout = self.negative_timeout + session.ice_driver.implicitly_wait(self.wait_until_implicit_time) + + def end_negative(self): + """Change back the parameters to suite positive tests""" + self.wait_until_retires = self.positive_wait_until_retires + self.wait_until_time_pause = self.positive_wait_until_time_pause + self.wait_until_implicit_time = self.positive_wait_until_implicit_time + self.timeout = self.positive_timeout + session.ice_driver.implicitly_wait(self.wait_until_implicit_time) + + def run_negative(self, run_me, error_msg): + self.start_negative() + try: + run_me() # click.css + except: + # will run if click does NOT succeed + self.errorCounter = 0 + self.errorList = "" + else: + # will run if click SUCCEED + raise Exception(error_msg) + self.end_negative() + +session = SessionSingletone() |