summaryrefslogtreecommitdiffstats
path: root/testapi
AgeCommit message (Collapse)AuthorFilesLines
2017-08-25leverage setup.py directly to install TestAPISerenaFeng4-32/+12
1. delete additional script install.sh 2. using 'python setup.py install' directly to install TestAPI, as traditional python project do Change-Id: Ifcdee7b2bae2553f523a722bff794c40d20f81cc Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-25update scenario nameSerenaFeng3-1/+37
url PUT /api/v1/scenarios/<scenario_name> if new_name already exist, return Forbidden if new_name == name, return Forbidden Change-Id: If3b82b3df4a763d60dad110caca2659c5f39ab50 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-25update installer under scenarioSerenaFeng3-9/+132
1. post, add one or more new installers 2. update, replace existed installers as a totality 3. delete, delete one or more installers by name 4. in post&update, if schema is not consistent with ScenarioInstaller model, BadRequest will be raised(only extra keys will be detected currently) 5. in post, if installer already exist, return Conflict with already exist message 6. in update, if a installer appears more than once, also return Conflict with already exist message Change-Id: I830dba3bcf5f1a9d1c93513b4aae59009f69dc8f Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-25simplify unit tests implementation of update scenarioSerenaFeng1-88/+79
1. delete useless input arguments 2. update on and assert with self.req_d directly delete intermediate variable 'scenario' Change-Id: I3eda1df4893c890bb23ccf05b45ce2de5fa9dd93 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-25update versions under scenarioSerenaFeng4-34/+190
1. post, add one or more new versions 2. update, replace existed version as a totality 3. delete, delete one or more versions by name 4. in post&update, if schema is not consistent with ScenarioVersion model, BadRequest will be raised(only extra keys will be detected currently) 5. in post, if project already exist, return Conflict with already exist message 6. in update, if a version appears more than once, also return Conflict with already exist message 7. add update with conflict unittest for projects Change-Id: I0d2c8a5567f3abce7b0313a64e18303af02cc002 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-25bugfix: fail to generate APIs document patchSerenaFeng1-2/+2
Change-Id: Iac5bb851514f0f688fcb72deb5f07488bc071225 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-24bugfix: fail to generate APIs documentSerenaFeng3-3/+10
Change-Id: I13c91fb34e190cd62400eccec6b755419aad89d1 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-23bugfix: malfunction of scenario equal checkSerenaFeng3-13/+26
1. bugfix equal check with[] will return list[false, true], and always True in next step check 2. in assert_res() leverage '==' will never assert even if they are not equal Change-Id: I683e3489d45b98b508f8ab8b6ef268ca9a1ebd5f Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-22Merge "bugfix: OperationFailure: the limit must be positive"Serena Feng1-15/+16
2017-08-22Merge "change scenario owner"Serena Feng4-4/+51
2017-08-22Merge "update projects in scenario"Serena Feng6-5/+247
2017-08-22Merge "in swagger operation parameter supports array type"Serena Feng1-5/+12
2017-08-22Merge "update customs in scenario"Serena Feng5-30/+222
2017-08-21bugfix: OperationFailure: the limit must be positiveSerenaFeng1-15/+16
in cursor.aggregate(), set limit=0 is not allowed, in this patch, if no records to be listed, return empty list directly, no more aggregate() JIRA: RELENG-293 Change-Id: I7317892875da9c0f785ba010b55715032dee31ce Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-21change scenario ownerSerenaFeng4-4/+51
1 bugfix owner must be explicit in ScenarioVersion model 2 change owner of scenario 3. usage: PUT /api/v1/scenarios/<scenario_name>/owner? \ installer=<installer_name>& \ version=<version_name> body: new owner Change-Id: I261468cd8445030b61e37e0f804b699d6205bdb0 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-21update projects in scenarioSerenaFeng7-10/+259
1. post, add one or more new projects 2. update, replace existed projects wholly 3. delete, delete one or more projects by name 4. in post&update, if schema is not consistent with ScenarioProject model, BadRequest will be raised(only extra keys will be detected currently) 5. in post, if project already exist, return Conflict with already exist message Change-Id: Iead585f787a4acc61abce6c9d38a036739b498d6 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-18in swagger operation parameter supports array typeSerenaFeng1-5/+12
it will be used in scenario update process later Change-Id: Ic44023169f1c0da0946e5e60339ce58076fc8807 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-18update customs in scenarioSerenaFeng5-30/+222
1) post to add one or multiple test cases 2) update to substitute all the test cases 3) delete with body to delete one or multiple test cases 4) to facilitate the process and response body usually useless, if update success all updates(scores/trust_indicators/customs), return 200 with no response body Change-Id: I5148f172989fa8e0e70ffed92ee383c0520dbb41 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-18Merge "bugfix: testapi is killed because of oom_kill"Serena Feng2-17/+19
2017-08-17impl update trust_indicator in scenarioSerenaFeng3-22/+98
Change-Id: I1afe38412926778bc84d178dbbfc3fe0cde15f69 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-16bugfix: testapi is killed because of oom_killSerenaFeng2-17/+19
if page is not provided, return page 1 to avoid large memory consume, further more to kill testapi: Out of memory: Kill process 30842 (opnfv-testapi) score 519 or sacrifice child Killed process 30842 (opnfv-testapi) total-vm:4739716kB, anon-rss:3974612kB, file-rss:0kB JIRA: RELENG-291 Change-Id: Id0e144c030aee390cc41cff8a48e3c997de4ad84 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-15update scenario scoresSerenaFeng4-6/+190
update score url: POST /api/v1/scenarios/<scenario_name>/scores? \ installer=<installer_name>& \ version=<version_name>& \ project=<project_name> add new score record interface add unit test add swagger specification Change-Id: Ib7bb31f303a9a9402325476bfdadb58aa0df560e Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-14delete obsolete scenario update codeSerenaFeng3-410/+10
1) update scenario will be subsitituted with new methods, in this patch delete the obsolete code first to make clean room 2) test_queryCombination() will fail randomly, in this patch disable it first, reopen when problem solved Change-Id: I1939876465934ea09894255712057a78f120be71 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-08-10Merge "add Pods page in webportal"Serena Feng9-504/+212
2017-08-09add Pods page in webportalSerenaFeng9-504/+212
delete OPNFV Powered Guidelines page add Pods page with create/list operations Change-Id: Ib9fd2834bd9d54ee33600458a90e3aac76382589 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-26merge swagger_base_url with ui_urlSerenaFeng9-16/+12
TestAPI used to have only one webpage, which is swagger_ui, now a new one webportal is added, and the base url is the same (http://testresults.opnfv.org/test)for them both. This patch aim to unify the urls. Change-Id: I15295975fb05f7e8c8d413e12b2b5c0784f0799a Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-24delete obsolete run_test.shSerenaFeng1-40/+0
after switching to tox, run_test.sh is not used now Change-Id: I66d40d6df47652b956f85f022843b60886ce41a2 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-21query date from oldest to newestSerenaFeng1-11/+20
Change-Id: I3d0345bb85967f48617c485bbee1dfe6fa04a644 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-21separate db methods from handler.pySerenaFeng9-54/+60
db methods are mingled in handler, which is not well structured Change-Id: I639679d3fc05a0b6528158186b8bf89e0cd10596 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-21Merge "decouple the mutual-dependence of config.py and server.py"Jose Lausuch11-68/+75
2017-07-20decouple the mutual-dependence of config.py and server.pySerenaFeng11-68/+75
Currently server.py relies on CONF while starting the service, and config.py's config_fie is set in server.py, which is wrongly bi-depended this patch aims to let Config parse the sys.argv personally, just as oslo.config do, so that decouple the mutual-dependency Change-Id: I46887d122a98d478caebe9eeb7ab038941ce1f6b Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-20modify url to relative path to fit with testresults.opnfv.org/testgrakiss1-3/+3
Change-Id: Ia600fe310404a1ba45e9571d611eedcdc669dbc7 Signed-off-by: grakiss <grakiss.wanglei@huawei.com>
2017-07-20role based access control and result uploadgrakiss14-21/+225
1. add role for user 2. user can upload test results Change-Id: I1c5370be7818edb0394f05e8b81f975deb98b286 Signed-off-by: grakiss <grakiss.wanglei@huawei.com>
2017-07-19Merge "bugfix: pagination raise exception when no records returned"Serena Feng1-13/+14
2017-07-19Merge "bugfix: query doesn't work well with period=1"Serena Feng3-7/+35
2017-07-19Merge "bugfix: mix order of Arno results"Serena Feng2-2/+2
2017-07-19bugfix: pagination raise exception when no records returnedSerenaFeng1-13/+14
if no records returned, it will raise 'Request page > total_pages' error. this patch is submitted to fix this JIRA: RELENG-281 Change-Id: I447247c55c64674d44d21d6f4ac8bb3ef725cfb0 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-19bugfix: query doesn't work well with period=1SerenaFeng3-7/+35
when querying by date, if $lt is not provided, the empty/None/null/'' results will also be returned, the patch aims to fix this issue by adding $lt = datetime.now() if not provided JIRA: RELENG-212 Change-Id: Ida1e7d386a88d4ab640441df161c1fe134593f82 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-19bugfix: mix order of Arno resultsSerenaFeng2-2/+2
because start_date is not always in the same format or timezone, sort by start_date will be misordered some times, in this patch leverage '_id' to do the sort, it is generated by mongodb itself, always upscend. JIRA: FUNCTEST-694 JIRA: RELENG-213 Change-Id: Ie0ed5cd09c3f7abb1803d72abe5ecab440c1569c Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-14leverage openstack's requirements ruleSerenaFeng2-11/+11
change requirements.txt and test-requirements.txt to keep consistent with openstack's global-requirements.txt Change-Id: I0e62c88b957136438a23e85e41d775194bdc8757 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-14leverage tox and pytest to execute unit testSerenaFeng2-4/+9
Change-Id: I20856e1b445587f0d8ee23e792793af863743252 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-14testapi: bugfix of toxMatthewLi9-4/+13
error log https://gerrit.opnfv.org/gerrit/#/c/37053/ https://build.opnfv.org/ci/job/testapi-verify-master/220/console Change-Id: Id278edad06c2852c662392d75fd3cf4041b03451 Signed-off-by: MatthewLi <lijun_1203@126.com>
2017-07-13Merge "leverage testapi's own gitignore"Serena Feng1-0/+4
2017-07-12leverage testapi's own gitignoreSerenaFeng1-0/+4
some files/dirs should be gitignored in testapi, but they may be needed in releng, this patch aims to manage gitignore by testapi itself Change-Id: I3c57d1199145d7f062d4e48aa8216ae34672f455 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-12move resources unit tests to tests/unit/resourcesSerenaFeng12-13/+13
As webportal is introduced, the project structure is becoming more complex, it is time to make it a a little bit more official Change-Id: Id380d37b07719f053b0bd385a326a2f2944a4b22 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-05bugfix: hardcoded testapi urlsSerenaFeng6-12/+16
testapi webportal's urls are fixed in configure files this patch aims to modify them according to base_url provided when bringing up container Change-Id: I29c461fc3b837e54d4ff5330dcaa520637590ff7 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-06-28refactor list operationSerenaFeng1-26/+42
all operations mix together make it very difficult to read Change-Id: I7e4a12fd13a7aa0dc0c8fc09b69c7e43a2ab18ac Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-06-28bugfix: Exception when the results is emptySerenaFeng1-2/+2
list operation crash when limit is not provided, error message: OperationFailure: the limit must be positive JIRA: RELENG-265 Change-Id: Id8db93b594010d054a71d301d9c42eed113c12e1 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-06-27bugfix: pagination crash due to memory limitationSerenaFeng3-19/+54
MongoDB sorts the results in memory, and the default mem limitation is 32M, if the sort operation consumes more than that it will return an error: OperationFailure: Executor error during find command: OperationFailed Sort operation used more than the maximum 33554432 bytes of RAM. Add an index, or specify a smaller limit. To solve this problem, here we leverage aggregate() and allowDiskUse=True, it is said will not be limited by memory Change-Id: Id698ad1d02912e8b350a33a926fcccc390814fcc Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-06-23Merge "Changing urls of testapi api and resources"Serena Feng1-2/+2