From 96b3ebd31ee19f3942c9826a272772167916fe2f Mon Sep 17 00:00:00 2001 From: Ben Thomasson Date: Mon, 19 Mar 2018 15:21:49 -0400 Subject: [PATCH] Moves network_ui_test to an external repo --- awx/main/routing.py | 2 - awx/network_ui_test/CONTRIBUTING.md | 221 ------------------ awx/network_ui_test/__init__.py | 1 - awx/network_ui_test/consumers.py | 184 --------------- awx/network_ui_test/designs/messages.yml | 18 -- awx/network_ui_test/designs/models.png | Bin 159647 -> 0 bytes awx/network_ui_test/designs/models.yml | 168 ------------- .../migrations/0001_initial.py | 102 -------- .../migrations/0002_auto_20180306_2243.py | 29 --- .../migrations/0003_auto_20180306_2306.py | 26 --- awx/network_ui_test/migrations/__init__.py | 0 awx/network_ui_test/models.py | 73 ------ awx/network_ui_test/routing.py | 12 - .../network_ui_test/upload_test.html | 5 - awx/network_ui_test/tools/Makefile | 13 -- awx/network_ui_test/tools/coverage_report.py | 51 ---- awx/network_ui_test/tools/requirements.txt | 2 - awx/network_ui_test/urls.py | 14 -- awx/network_ui_test/views.py | 112 --------- awx/settings/defaults.py | 3 +- .../src/network-ui/network.ui.controller.js | 15 +- awx/urls.py | 1 - 22 files changed, 13 insertions(+), 1039 deletions(-) delete mode 100644 awx/network_ui_test/CONTRIBUTING.md delete mode 100644 awx/network_ui_test/__init__.py delete mode 100644 awx/network_ui_test/consumers.py delete mode 100644 awx/network_ui_test/designs/messages.yml delete mode 100644 awx/network_ui_test/designs/models.png delete mode 100644 awx/network_ui_test/designs/models.yml delete mode 100644 awx/network_ui_test/migrations/0001_initial.py delete mode 100644 awx/network_ui_test/migrations/0002_auto_20180306_2243.py delete mode 100644 awx/network_ui_test/migrations/0003_auto_20180306_2306.py delete mode 100644 awx/network_ui_test/migrations/__init__.py delete mode 100644 awx/network_ui_test/models.py delete mode 100644 awx/network_ui_test/routing.py delete mode 100644 awx/network_ui_test/templates/network_ui_test/upload_test.html delete mode 100644 awx/network_ui_test/tools/Makefile delete mode 100755 awx/network_ui_test/tools/coverage_report.py delete mode 100644 awx/network_ui_test/tools/requirements.txt delete mode 100644 awx/network_ui_test/urls.py delete mode 100644 awx/network_ui_test/views.py diff --git a/awx/main/routing.py b/awx/main/routing.py index abda29bd8c..79a3c84a5a 100644 --- a/awx/main/routing.py +++ b/awx/main/routing.py @@ -1,6 +1,5 @@ from channels.routing import route from awx.network_ui.routing import channel_routing as network_ui_routing -from awx.network_ui_test.routing import channel_routing as network_ui_test_routing channel_routing = [ @@ -11,4 +10,3 @@ channel_routing = [ channel_routing += network_ui_routing -channel_routing += network_ui_test_routing diff --git a/awx/network_ui_test/CONTRIBUTING.md b/awx/network_ui_test/CONTRIBUTING.md deleted file mode 100644 index eb82432402..0000000000 --- a/awx/network_ui_test/CONTRIBUTING.md +++ /dev/null @@ -1,221 +0,0 @@ - -Network UI Test -=============== - -Network UI Test is an event driven test framework for testing the Network UI. -This tool works by setting up the UI with a pre-test run snapshot, replaying a -set of events to the Network UI, catching exceptions and then comparing the -state of the system after the events to a post test run snapshot. Test results -and test code coverage are stored for each test run through the system. This -allows us to determine which lines of test are run during each test and which -lines are run under any test. This can be very helpful during development to -determine that the code is executed as expected given a certain input, to find -code that needs additional tests, and to find code that is not be run under any -of the given inputs (a.k.a. dead code). - -Using this test framework it is fairly easy to achieve 90%+ code coverage under -test with a few days of work recording and crafting tests. - -Test Steps ----------- - -The tests suppported by this test framework perform the following steps: - -* Reset code coverage records -* Recreate a pre-test snapshot on the UI -* Replay a set of events to the UI -* Check for exceptions thrown by the UI -* Check the state of the system based on the post-test snapshot -* Report the pass/fail/error status of the test by test name, code version, and client id -* Report the code coverage per test result -* Repeat for next test - -Test Case Data Schema ---------------------- - -The tests are completely data driven and the data for the test snapshots and events are stored in a JSON -structure in the `TestCase` model under the `test_case_data` field that has the following structure: - - { - "event_trace": [], - "fsm_trace": [], - "snapshots": [ - { - "devices": [], - "inventory_toolbox": [], - "links": [], - "message_id": 4, - "msg_type": "Snapshot", - "order": 0, - "sender": 0, - "trace_id": 2 - }, - { - "devices": [], - "inventory_toolbox": [], - "links": [], - "message_id": 31, - "msg_type": "Snapshot", - "order": 1, - "sender": 0, - "trace_id": 2 - } - ] - } - - -The pre-test snapshot has order 0 and the post-test snapshot has order 1. - - - -Network UI Test Models ----------------------- - -![Models](designs/models.png) - -* FSMTrace - The record of an event that happend during an FSM trace. This is used in the recording phase of test case data. -* EventTrace - The record of an event that happened during an event trace. This is used in the recording phase of test case data. -* Coverage - Per-line test case coverage as returned by istanbul JS code coverage tool. -* TopologySnapshot - A snapshot of the state of the network UI before or after the test was run. -* TestCase - The definition of a test case with a given name using the test case data schema defined above. -* Result - One of passed, failed, errored, skipped, aborted, not run, or blocked. -* TestResult - The record of one test case being run at a certain code location by a client at a certain time. -* CodeUnderTest - The record of what exactly was the code being tested at the time the test was run. - - -Messages --------- - -JSON messages are passed over the `/network_ui/test` websocket between the test client and the test server. -The protocol that is used for all messages is in ABNF (RFC5234): - - - message_type = 'MultipleMessage' / 'MouseEvent' / 'MouseWheelEvent' / 'KeyEvent' / 'StartRecording' / 'StopRecording' / 'ViewPort' / 'FSMTrace' / 'ChannelTrace' / 'Snapshot' / 'EnableTest' / 'DisableTest' / 'StartTest' / 'TestCompleted' / 'TestResult' / 'Coverage' - message_data = '{' 'msg_type' ': ' message_type ', ' key-value *( ', ' key-value ) '}' - message = '[ id , ' posint ']' / '[ topology_id , ' posint ']' / '[' message_type ', ' message_data ']' - -See https://github.com/AndyA/abnfgen/blob/master/andy/json.abnf for the rest of the JSON ABNF. - -See [designs/messages.yml](designs/messages.yml) for the allowable keys and values for each message type. - - - -Loading Tests -------------- - -Tests can be imported from exported data dumps from the `awx-manage datadump` command. From the Tower shell run -the following command: - - awx-manage loaddata /awx_devel/network_ui_test_cases_2018_03_12.json - -This will load the tests from the `network_ui_test_cases_2018_03_12.json` file. - -Exporting Tests ---------------- - -Use the standard Django dumpdata command to dump the test case data to a file: - - awx-manage dumpdata network_ui_test.TestCase > /awx_devel/network_ui_test_cases_YYYY_MM_DD.json - - -Writing Tests Manually or Generating Tests ------------------------------------------- - -Use the empty test case schema above and add messages to the event_trace list. Then upload the -JSON test data to the upload test URL below. - -Recording Tests ---------------- - -Tests can be reruns of previously recorded manual interactions with the network UI. To start a recording -open the JavaScript console and run this command: - - scope.onRecordButton() - -To stop the recording run this command: - - scope.onRecordButton() - -To download the recording use this command: - - scope.onDownloadRecordingButton() - - -After downloading the recording upload the data using the following URL to make a test of it. - -Uploading Tests ---------------- - -Go to the URL: https://SERVER:PORT/network_ui_test/upload_test and use the form to upload test data -and choose a test case name. - -Instrumenting a UI Build ------------------------- - -Code coverage is collected automatically if the UI is built with instrumented code. Add this section to the -rules in awx/ui/build/webpack.base.js to build instrumented code. - - { - test: /\.js$/, - use: { - loader: 'istanbul-instrumenter-loader', - options: { esModules: true } - }, - enforce: 'pre', - include: [ - /src\/network-ui\// - ] - }, - - -Then run: - - make ui-devel - -or: - - make ui-docker - - -To rebuild the code with istanbul instrumentation. - - -Running Tests -------------- - - -To kick off tests in the web browser navigate to the Network UI page under an inventory and open the JavaScript console. -Run this command in the JavaScript console: - - scope.onRunTestsButton(); - - -Building a Coverage Report --------------------------- - -To build a coverage report for the last set of tests that were run as in above. Edit the `tools/Makefile` and change -`SERVER` to match your Tower server. Then run the following command from the `tools` directory: - - make coverage - -This will download all the coverage data from all the test results that were previously recorded and build a coverage -report with istantbul. You can then view the report at the address http://localhost:9000 or http://server:PORT -where you executed the command. - -http://localhost:9000/coverage will contain the coverage for all test cases merged together. -http://localhost:9000/Load/coverage will contain the coverage for just loading the page. -http://localhost:9000/TestX/coverage will contain the coverage for just the TestX test where -TestX is the name of one of the tests run previously. - - - -3.3 Hardening Road Map ----------------------- - -* Add post-test snapshot comparison -* Add FSM trace comparison -* Add an ability to run a single test -* Add an ability to run a subset of the tests -* Add a big red light when event recording is on. - - diff --git a/awx/network_ui_test/__init__.py b/awx/network_ui_test/__init__.py deleted file mode 100644 index d05f93956d..0000000000 --- a/awx/network_ui_test/__init__.py +++ /dev/null @@ -1 +0,0 @@ -# Copyright (c) 2017 Red Hat, Inc diff --git a/awx/network_ui_test/consumers.py b/awx/network_ui_test/consumers.py deleted file mode 100644 index a6d3d6a2cf..0000000000 --- a/awx/network_ui_test/consumers.py +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright (c) 2018 Red Hat, Inc -# In consumers.py -from channels import Group, Channel -from channels.sessions import channel_session -from awx.network_ui.models import Topology, Client -from awx.network_ui.models import TopologyInventory -from awx.network_ui_test.models import FSMTrace, EventTrace, Coverage, TopologySnapshot -from awx.network_ui_test.models import TestCase, TestResult, CodeUnderTest, Result -import urlparse -import logging -from django.utils.dateparse import parse_datetime - - -import json -# Connected to websocket.connect - -logger = logging.getLogger("awx.network_ui_test.consumers") - - -def parse_inventory_id(data): - inventory_id = data.get('inventory_id', ['null']) - try: - inventory_id = int(inventory_id[0]) - except ValueError: - inventory_id = None - if not inventory_id: - inventory_id = None - return inventory_id - - -class TestPersistence(object): - - def parse_message_text(self, message_text, client_id): - data = json.loads(message_text) - if len(data) == 2: - message_type = data.pop(0) - message_value = data.pop(0) - if isinstance(message_value, list): - logger.error("Message has no sender") - return None, None - if isinstance(message_value, dict) and client_id != message_value.get('sender'): - logger.error("client_id mismatch expected: %s actual %s", client_id, message_value.get('sender')) - return None, None - return message_type, message_value - else: - logger.error("Invalid message text") - return None, None - - def handle(self, message): - topology_id = message.get('topology') - assert topology_id is not None, "No topology_id" - client_id = message.get('client') - assert client_id is not None, "No client_id" - message_type, message_value = self.parse_message_text(message['text'], client_id) - if message_type is None: - return - handler = self.get_handler(message_type) - if handler is not None: - try: - handler(message_value, topology_id, client_id) - except Exception: - Group("client-%s" % client_id).send({"text": json.dumps(["Error", "Server Error"])}) - raise - else: - logger.warning("Unsupported message %s: no handler", message_type) - - def get_handler(self, message_type): - return getattr(self, "on{0}".format(message_type), None) - - def onMultipleMessage(self, message_value, topology_id, client_id): - for message in message_value['messages']: - handler = self.get_handler(message['msg_type']) - if handler is not None: - handler(message, topology_id, client_id) - else: - logger.warning("Unsupported message %s", message['msg_type']) - - def onCoverageRequest(self, coverage, topology_id, client_id): - pass - - def onTestResult(self, test_result, topology_id, client_id): - xyz, _, rest = test_result['code_under_test'].partition('-') - commits_since, _, commit_hash = rest.partition('-') - commit_hash = commit_hash.strip('g') - - x, y, z = [int(i) for i in xyz.split('.')] - - code_under_test, _ = CodeUnderTest.objects.get_or_create(version_x=x, - version_y=y, - version_z=z, - commits_since=int(commits_since), - commit_hash=commit_hash) - - tr = TestResult(id=test_result['id'], - result_id=Result.objects.get(name=test_result['result']).pk, - test_case_id=TestCase.objects.get(name=test_result['name']).pk, - code_under_test_id=code_under_test.pk, - client_id=client_id, - time=parse_datetime(test_result['date'])) - tr.save() - - - def onCoverage(self, coverage, topology_id, client_id): - Coverage(test_result_id=TestResult.objects.get(id=coverage['result_id'], client_id=client_id).pk, - coverage_data=json.dumps(coverage['coverage'])).save() - - def onStartRecording(self, recording, topology_id, client_id): - pass - - def onStopRecording(self, recording, topology_id, client_id): - pass - - def write_event(self, event, topology_id, client_id): - if event.get('save', True): - EventTrace(trace_session_id=event['trace_id'], - event_data=json.dumps(event), - message_id=event['message_id'], - client_id=client_id).save() - - onViewPort = write_event - onMouseEvent = write_event - onTouchEvent = write_event - onMouseWheelEvent = write_event - onKeyEvent = write_event - - def onFSMTrace(self, message_value, diagram_id, client_id): - FSMTrace(trace_session_id=message_value['trace_id'], - fsm_name=message_value['fsm_name'], - from_state=message_value['from_state'], - to_state=message_value['to_state'], - order=message_value['order'], - client_id=client_id, - message_type=message_value['recv_message_type'] or "none").save() - - def onSnapshot(self, snapshot, topology_id, client_id): - TopologySnapshot(trace_session_id=snapshot['trace_id'], - snapshot_data=json.dumps(snapshot), - order=snapshot['order'], - client_id=client_id, - topology_id=topology_id).save() - - -@channel_session -def ws_connect(message): - # Accept connection - data = urlparse.parse_qs(message.content['query_string']) - inventory_id = parse_inventory_id(data) - topology_ids = list(TopologyInventory.objects.filter(inventory_id=inventory_id).values_list('topology_id', flat=True)) - topology_id = None - if len(topology_ids) > 0: - topology_id = topology_ids[0] - if topology_id is not None: - topology = Topology.objects.get(topology_id=topology_id) - else: - topology = Topology(name="topology", scale=1.0, panX=0, panY=0) - topology.save() - TopologyInventory(inventory_id=inventory_id, topology_id=topology.topology_id).save() - topology_id = topology.topology_id - message.channel_session['topology_id'] = topology_id - client = Client() - client.save() - message.channel_session['client_id'] = client.pk - Group("client-%s" % client.pk).add(message.reply_channel) - message.reply_channel.send({"text": json.dumps(["id", client.pk])}) - send_tests(message.reply_channel) - - -def send_tests(channel): - for name, test_case_data in TestCase.objects.all().values_list('name', 'test_case_data'): - channel.send({"text": json.dumps(["TestCase", [name, json.loads(test_case_data)]])}) - - -@channel_session -def ws_message(message): - Channel('test_persistence').send({"text": message['text'], - "topology": message.channel_session['topology_id'], - "client": message.channel_session['client_id']}) - - -@channel_session -def ws_disconnect(message): - pass - - diff --git a/awx/network_ui_test/designs/messages.yml b/awx/network_ui_test/designs/messages.yml deleted file mode 100644 index ff0721b535..0000000000 --- a/awx/network_ui_test/designs/messages.yml +++ /dev/null @@ -1,18 +0,0 @@ -messages: - - {msg_type: MultipleMessage, fields: [msg_type, sender, messages]} - - {msg_type: MouseEvent, fields: [msg_type, sender, x, y, type, trace_id]} - - {msg_type: MouseWheelEvent, fields: [msg_type, sender, delta, deltaX, deltaY, type, originalEvent, trace_id]} - - {msg_type: KeyEvent, fields: [msg_type, sender, key, keyCode, type, altKey, shiftKey, ctrlKey, metaKey, trace_id]} - - {msg_type: StartRecording, fields: [msg_type, sender, trace_id]} - - {msg_type: StopRecording, fields: [msg_type, sender, trace_id]} - - {msg_type: ViewPort, fields: [msg_type, sender, scale, panX, panY, trace_id]} - - {msg_type: FSMTrace, fields: [msg_type, order, sender, trace_id, fsm_name, from_state, to_state, recv_message_type]} - - {msg_type: ChannelTrace, fields: [msg_type, sender, trace_id, from_fsm, to_fsm, sent_message_type]} - - {msg_type: Snapshot, fields: [msg_type, sender, devices, links, groups, streams, order, trace_id]} - - {msg_type: EnableTest, fields: [msg_type]} - - {msg_type: DisableTest, fields: [msg_type]} - - {msg_type: StartTest, fields: [msg_type]} - - {msg_type: TestCompleted, fields: [msg_type]} - - {msg_type: TestResult, fields: [msg_type, sender, id, name, result, date, code_under_test]} - - {msg_type: Coverage, fields: [msg_type, sender, coverage, result_id]} - diff --git a/awx/network_ui_test/designs/models.png b/awx/network_ui_test/designs/models.png deleted file mode 100644 index 93327b3c789313f80f6888a1bfd72b560ad7f291..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159647 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
V`8$7M3 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 z - {% csrf_token %} - {{form}} - - diff --git a/awx/network_ui_test/tools/Makefile b/awx/network_ui_test/tools/Makefile deleted file mode 100644 index c736a388b9..0000000000 --- a/awx/network_ui_test/tools/Makefile +++ /dev/null @@ -1,13 +0,0 @@ - -SERVER = "https://meganuke:8043" -PORT = "9000" - -.PHONY: clean coverage - -clean: - git clean -fdX . - git clean -fd . - -coverage: - ./coverage_report.py ${SERVER} - python -m SimpleHTTPServer ${PORT} diff --git a/awx/network_ui_test/tools/coverage_report.py b/awx/network_ui_test/tools/coverage_report.py deleted file mode 100755 index 0563f71033..0000000000 --- a/awx/network_ui_test/tools/coverage_report.py +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -""" -Usage: - coverage_report [options] - -Options: - -h, --help Show this page - --debug Show debug logging - --verbose Show verbose logging -""" -from docopt import docopt -import logging -import sys -import os -import requests -import subprocess - -logger = logging.getLogger('coverage_report') - -TESTS_API = '/network_ui_test/tests' - - -def main(args=None): - if args is None: - args = sys.argv[1:] - parsed_args = docopt(__doc__, args) - if parsed_args['--debug']: - logging.basicConfig(level=logging.DEBUG) - elif parsed_args['--verbose']: - logging.basicConfig(level=logging.INFO) - else: - logging.basicConfig(level=logging.WARNING) - - server = parsed_args[''] - tests = requests.get(server + TESTS_API, verify=False).json() - - for test in tests['tests']: - if not os.path.exists(test['name']): - os.mkdir(test['name']) - with open(test['name'] + "/coverage.json", 'w') as f: - f.write(requests.get(server + test['coverage'], verify=False).text) - - for test in tests['tests']: - subprocess.Popen('istanbul report html', shell=True, cwd=test['name']).wait() - subprocess.Popen('istanbul report html', shell=True).wait() - return 0 - - -if __name__ == '__main__': - sys.exit(main(sys.argv[1:])) diff --git a/awx/network_ui_test/tools/requirements.txt b/awx/network_ui_test/tools/requirements.txt deleted file mode 100644 index bfe4ae8612..0000000000 --- a/awx/network_ui_test/tools/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -requests -docopt diff --git a/awx/network_ui_test/urls.py b/awx/network_ui_test/urls.py deleted file mode 100644 index 0a432d163b..0000000000 --- a/awx/network_ui_test/urls.py +++ /dev/null @@ -1,14 +0,0 @@ -# Copyright (c) 2017 Red Hat, Inc -from django.conf.urls import url - -from awx.network_ui_test import views - -app_name = 'network_ui_test' -urlpatterns = [ - url(r'^tests$', views.tests, name='tests'), - url(r'^upload_test$', views.upload_test, name='upload_test'), - url(r'^download_coverage/(?P[0-9]+)$', views.download_coverage, name='download_coverage'), - url(r'^download_trace$', views.download_trace, name='download_trace'), - url(r'^download_recording$', views.download_recording, name='download_recording'), -] - diff --git a/awx/network_ui_test/views.py b/awx/network_ui_test/views.py deleted file mode 100644 index bdb612d224..0000000000 --- a/awx/network_ui_test/views.py +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright (c) 2017 Red Hat, Inc -from django.shortcuts import render -from django import forms -from django.http import JsonResponse, HttpResponse, HttpResponseRedirect -from django.core.exceptions import ObjectDoesNotExist -import yaml - -import json - - -# Create your views here. -from .models import FSMTrace, EventTrace, TopologySnapshot -from .models import TestCase, TestResult, Coverage - - -class FSMTraceForm(forms.Form): - topology_id = forms.IntegerField() - trace_id = forms.IntegerField() - client_id = forms.IntegerField() - - -def download_trace(request): - form = FSMTraceForm(request.GET) - if form.is_valid(): - topology_id = form.cleaned_data['topology_id'] - trace_id = form.cleaned_data['trace_id'] - client_id = form.cleaned_data['client_id'] - data = list(FSMTrace.objects.filter(trace_session_id=trace_id, - client_id=client_id).order_by('order').values()) - response = HttpResponse(yaml.safe_dump(data, default_flow_style=False), - content_type="application/force-download") - response['Content-Disposition'] = 'attachment; filename="trace_{0}_{1}_{2}.yml"'.format(topology_id, client_id, trace_id) - return response - else: - return HttpResponse(form.errors) - - -class RecordingForm(forms.Form): - topology_id = forms.IntegerField() - trace_id = forms.IntegerField() - client_id = forms.IntegerField() - - -def download_recording(request): - form = RecordingForm(request.GET) - if form.is_valid(): - topology_id = form.cleaned_data['topology_id'] - trace_id = form.cleaned_data['trace_id'] - client_id = form.cleaned_data['client_id'] - data = dict() - data['event_trace'] = [json.loads(x) for x in EventTrace - .objects.filter(trace_session_id=trace_id, client_id=client_id) - .order_by('message_id') - .values_list('event_data', flat=True)] - data['fsm_trace'] = list(FSMTrace - .objects - .filter(trace_session_id=trace_id, client_id=client_id) - .order_by('order') - .values()) - data['snapshots'] = [json.loads(x) for x in TopologySnapshot - .objects.filter(trace_session_id=trace_id, client_id=client_id) - .order_by('order') - .values_list('snapshot_data', flat=True)] - response = HttpResponse(json.dumps(data, sort_keys=True, indent=4), - content_type="application/force-download") - response['Content-Disposition'] = 'attachment; filename="trace_{0}_{1}_{2}.yml"'.format(topology_id, client_id, trace_id) - return response - else: - return HttpResponse(form.errors) - - -def tests(request): - tests = list(TestCase.objects.all().values('test_case_id', 'name')) - for x in tests: - x['coverage'] = "/network_ui_test/download_coverage/{0}".format(x['test_case_id']) - return JsonResponse(dict(tests=tests)) - - -def create_test(name, data): - try: - test_case = TestCase.objects.get(name=name) - test_case.test_case_data=json.dumps(data) - test_case.save() - except ObjectDoesNotExist: - TestCase(name=name, test_case_data=json.dumps(data)).save() - - -class UploadTestForm(forms.Form): - name = forms.CharField() - file = forms.FileField() - - -def upload_test(request): - if request.method == 'POST': - form = UploadTestForm(request.POST, request.FILES) - if form.is_valid(): - name = form.cleaned_data['name'] - data = json.loads(request.FILES['file'].read()) - create_test(name, data) - return HttpResponseRedirect('/network_ui_test/tests') - else: - form = UploadTestForm() - return render(request, 'network_ui_test/upload_test.html', {'form': form}) - - -def download_coverage(request, pk): - latest_tr = TestResult.objects.filter(test_case_id=pk).order_by('-time')[0] - coverage = Coverage.objects.get(test_result_id=latest_tr.pk) - response = HttpResponse(coverage.coverage_data, - content_type="application/json") - return response - diff --git a/awx/settings/defaults.py b/awx/settings/defaults.py index 919e471a86..0cbc257ce1 100644 --- a/awx/settings/defaults.py +++ b/awx/settings/defaults.py @@ -279,8 +279,7 @@ INSTALLED_APPS = ( 'awx.ui', 'awx.sso', 'solo', - 'awx.network_ui', - 'awx.network_ui_test', + 'awx.network_ui' ) INTERNAL_IPS = ('127.0.0.1',) diff --git a/awx/ui/client/src/network-ui/network.ui.controller.js b/awx/ui/client/src/network-ui/network.ui.controller.js index 7f5dd3103f..8c9a455165 100644 --- a/awx/ui/client/src/network-ui/network.ui.controller.js +++ b/awx/ui/client/src/network-ui/network.ui.controller.js @@ -35,6 +35,7 @@ var NetworkUIController = function($scope, $scope.api_token = ''; $scope.disconnected = false; + $scope.tests_enabled = false; $scope.topology_id = 0; // Create a web socket to connect to the backend server @@ -54,9 +55,17 @@ var NetworkUIController = function($scope, $scope.control_socket = new ReconnectingWebSocket(protocol + "://" + window.location.host + "/network_ui/topology?inventory_id=" + $scope.inventory_id, null, {debug: false, reconnectInterval: 300}); - $scope.test_socket = new ReconnectingWebSocket(protocol + "://" + window.location.host + "/network_ui/test?inventory_id=" + $scope.inventory_id, - null, - {debug: false, reconnectInterval: 300}); + if ($scope.tests_enabled) { + $scope.test_socket = new ReconnectingWebSocket(protocol + "://" + window.location.host + "/network_ui/test?inventory_id=" + $scope.inventory_id, + null, + {debug: false, reconnectInterval: 300}); + } else { + $scope.test_socket = { + on_message: util.noop, + send: util.noop + }; + } + } else { $scope.control_socket = { on_message: util.noop diff --git a/awx/urls.py b/awx/urls.py index 508ef3075f..57a97fdae5 100644 --- a/awx/urls.py +++ b/awx/urls.py @@ -16,7 +16,6 @@ urlpatterns = [ url(r'^sso/', include('awx.sso.urls', namespace='sso')), url(r'^sso/', include('social_django.urls', namespace='social')), url(r'^network_ui/', include('awx.network_ui.urls', namespace='network_uiui', app_name='network_ui')), - url(r'^network_ui_test/', include('awx.network_ui_test.urls', namespace='network_ui_test', app_name='network_ui_test')), url(r'^(?:api/)?400.html$', handle_400), url(r'^(?:api/)?403.html$', handle_403), url(r'^(?:api/)?404.html$', handle_404),