From 33b40dcb6b3100169112d1e05bc04e8569267538 Mon Sep 17 00:00:00 2001 From: Tristan Cacqueray Date: Sat, 13 Feb 2021 01:35:46 +0000 Subject: [PATCH] web: add benchmark test for build output This change measures the render time of the BuildOutput component. Change-Id: I47979443781f0150f8f203c857847801d54a7385 --- web/src/containers/build/BuildOutput.test.jsx | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 web/src/containers/build/BuildOutput.test.jsx diff --git a/web/src/containers/build/BuildOutput.test.jsx b/web/src/containers/build/BuildOutput.test.jsx new file mode 100644 index 0000000000..c76236a2e6 --- /dev/null +++ b/web/src/containers/build/BuildOutput.test.jsx @@ -0,0 +1,38 @@ +// Copyright 2021 Red Hat, Inc +// +// Licensed under the Apache License, Version 2.0 (the "License"); you may +// not use this file 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. + +import React from 'react' +import ReactDOM from 'react-dom' +import BuildOutput from './BuildOutput' + +const fakeOutput = (width, height) => ({ + test: { + failed: [ + { + zuul_log_id: 'fake', + stderr_lines: Array(height).fill('x'.repeat(width)) + }, + ], + }, +}) + +it('BuildOutput renders big task', () => { + const div = document.createElement('div') + const output = fakeOutput(512, 1024) + const begin = performance.now() + ReactDOM.render(, div, () => { + const end = performance.now() + console.log('Render took ' + (end - begin) + ' milliseconds.') + }) +})