From a53ce32e5425fc77e3af7e9774795338ba1af906 Mon Sep 17 00:00:00 2001 From: bruno DA SILVA Date: Wed, 22 Jul 2020 17:07:12 +0200 Subject: [PATCH] =?UTF-8?q?N=C2=B03062=20-=20setup.css=20file=20integrity?= =?UTF-8?q?=20test?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit this is for the task : "Generate setup.css at build time" --- .gitignore | 1 + css/setup.css | 267 ------------------ css/setup.scss | 3 + .../SetupCssIntegrityChecklistTest.php | 59 ++++ 4 files changed, 63 insertions(+), 267 deletions(-) delete mode 100644 css/setup.css create mode 100644 test/releaseChecklist/SetupCssIntegrityChecklistTest.php diff --git a/.gitignore b/.gitignore index bc4aef17f..6c2d20941 100644 --- a/.gitignore +++ b/.gitignore @@ -140,3 +140,4 @@ local.properties .scala_dependencies .worksheet +/css/setup.css diff --git a/css/setup.css b/css/setup.css deleted file mode 100644 index 750e89cde..000000000 --- a/css/setup.css +++ /dev/null @@ -1,267 +0,0 @@ -/*! - * Copyright (C) 2013-2020 Combodo SARL - * - * This file is part of iTop. - * - * iTop is free software; you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * iTop is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - */ -/* Helpers classes */ -.center { - text-align: center; -} -/* Animations */ -@keyframes progress_bar_color_ongoing { - from { - background-color: #FBD38D; - } - to { - background-color: #FEEBC8; - } -} -@-webkit-keyframes bg-pan-left { - 0% { - background-position: 100% 50%; - } - 100% { - background-position: 0 50%; - } -} -@keyframes bg-pan-left { - 0% { - background-position: 100% 50%; - } - 100% { - background-position: 0 50%; - } -} -/* Theme */ -body { - background-color: #eee; - color: #1A202C; - margin: 0; - padding: 0; - font-size: 10pt; - font-family: Tahoma, Verdana, Arial, Helvetica, serif; - overflow-y: auto; -} -h1 { - color: #555555; - font-size: 16pt; -} -h2 { - color: #1A202C; - font-size: 14pt; - font-weight: normal; -} -h3 { - color: #1C94C4; - font-size: 12pt; - font-weight: bold; -} -a { - color: #1c94c4; - text-decoration: none; -} -a:hover { - color: #EA7D1E; -} -#header { - width: 600px; - margin-left: auto; - margin-right: auto; - margin-top: 50px; - padding: 20px; - background-color: #fff; - height: 54px; - border: 3px solid #CBD2D9; - border-bottom: none; -} -#header img { - border: 0; - vertical-align: middle; - margin-right: 20px; -} -#header h1 { - height: 54px; - margin: 0; -} -#setup { - width: 600px; - margin-left: auto; - margin-right: auto; - padding: 20px; - background-color: #fff; - border: 3px solid #CBD2D9; - border-top: none; -} -.next { - width: 100%; - text-align: right; -} -.v-spacer { - padding-top: 1em; -} -button { - margin-top: 1em; - padding-left: 1em; - padding-right: 1em; -} -p.info { - padding-left: 50px; - background: url(../images/info-mid.png) no-repeat left -5px; - min-height: 48px; -} -p.ok { - padding-left: 50px; - background: url(../images/clean-mid.png) no-repeat left -8px; - min-height: 48px; -} -p.warning { - padding-left: 50px; - background: url(../images/messagebox_warning-mid.png) no-repeat left -5px; - min-height: 48px; -} -p.error { - padding-left: 50px; - background: url(../images/stop-mid.png) no-repeat left -5px; - min-height: 48px; -} -label { - cursor: pointer; -} -td.label { - text-align: left; -} -label.read-only { - color: #666; - cursor: text; -} -td.input { - text-align: left; -} -table.formTable { - border: 0; -} -.wizlabel, .wizinput { - color: #000; - font-size: 10pt; -} -.wizhelp { - color: #333; - font-size: 8pt; -} -#progress { - border: none; - width: 210px; - height: 26px; - line-height: 26px; - text-align: center; - margin: 5px; - box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important; - border-radius: 2px; - background-color: #EDF2F7 !important; -} -#progress .progress { - color: #000000 !important; - /* !important to overload jQuery UI style */ - background-image: linear-gradient(270deg, #FBD38D 50%, #FEEBC8 55%, #FBD38D 80%) !important; - /* !important to overload jQuery UI style */ - animation: bg-pan-left 3s infinite both; - background-size: 600% 100%; - border-radius: inherit; -} -#progress .progress.progress-error { - background-image: none !important; - background-color: #F56565 !important; - /* !important to overload jQuery UI style */ - animation: none; -} -h3.clickable { - background: url(../images/plus.gif) no-repeat left; - padding-left: 16px; - cursor: hand; -} -h3.clickable.open { - background: url(../images/minus.gif) no-repeat left; - padding-left: 16px; - cursor: hand; -} -.message { - color: #1A202C; - background-color: #F7FAFC; - border-left: 4px solid #4A5568; - padding: 10px; -} -.message > .message-title { - font-weight: bold; - margin-right: 5px; -} -.message ~ .message { - margin-top: 6px; -} -.message.message-valid { - color: #276749; - background-color: #F0FFF4; - border-color: #48BB78; -} -.message.message-warning { - color: #C05621; - background-color: #FFFAF0; - border-color: #ED8936; -} -.message.message-error { - color: #C53030; - background-color: #FFF5F5; - border-color: #E53E3E; -} -.text-valid { - color: #276749; -} -.text-warning { - color: #C05621; -} -.text-error { - color: #C53030; -} -fieldset { - border: none; - padding: 0; - margin: 30px 0 0 0; -} -fieldset > legend { - margin-top: 25px; - margin-bottom: 7px; - padding-bottom: 7px; - width: 100%; - color: #3C3C3C; - font-size: 11pt; - font-weight: bold; - border-bottom: 1px solid #D2D2D2; -} -.module-selection-banner img { - max-height: 48px; -} -.module-selection-body { - height: 28em; - overflow: auto; - box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.06) !important; - background-color: #F7FAFC; - padding: 10px; -} -.module-selection-body .wiz-choice:checked ~ .description #itop-ticket-mgmt-simple-ticket-enhanced-portal:not(:checked) ~ .description::after, .module-selection-body .wiz-choice:checked ~ .description #itop-ticket-mgmt-itil-enhanced-portal:not(:checked) ~ .description::after { - content: "Legacy portal is no longer part of iTop, by leaving this option unchecked your portal users won't be able to access iTop anymore."; - display: block; - margin-top: 0.5em; - font-weight: bold; - color: #e60000b8; -} diff --git a/css/setup.scss b/css/setup.scss index acec8a053..82a2ff81f 100644 --- a/css/setup.scss +++ b/css/setup.scss @@ -16,6 +16,8 @@ * You should have received a copy of the GNU Affero General Public License */ +/* integrityCheck: begin (do not remove/edit) */ + ///////// // Colors $content-border-color: #CBD2D9 !default; @@ -314,3 +316,4 @@ fieldset{ } } +/* integrityCheck: end (do not remove/edit) */ \ No newline at end of file diff --git a/test/releaseChecklist/SetupCssIntegrityChecklistTest.php b/test/releaseChecklist/SetupCssIntegrityChecklistTest.php new file mode 100644 index 000000000..17df689ce --- /dev/null +++ b/test/releaseChecklist/SetupCssIntegrityChecklistTest.php @@ -0,0 +1,59 @@ + + * + */ + +namespace Combodo\iTop\Test\UnitTest\ReleaseChecklist; + +use Combodo\iTop\Test\UnitTest\ItopTestCase; +use DOMDocument; +use iTopDesignFormat; + + +/** + * Class iTopDesignFormatChecklistTest + * + * @runTestsInSeparateProcesses + * @preserveGlobalState disabled + * @backupGlobals disabled + * + * @covers iTopDesignFormat + * + * @package Combodo\iTop\Test\UnitTest\Setup + */ +class SetupCssIntegrityChecklistTest extends ItopTestCase +{ + + protected function setUp() + { + parent::setUp(); + } + + /** + */ + public function testSetupCssIntegrity() + { + $sSetupCssPath = APPROOT.'css/setup.css'; + $sSetupCssContent = file_get_contents($sSetupCssPath); + $this->assertContains('/* integrityCheck: begin (do not remove/edit) */', $sSetupCssContent); + $this->assertContains('/* integrityCheck: end (do not remove/edit) */', $sSetupCssContent); + $this->assertGreaterThan(4000, strlen($sSetupCssContent)); //the value is totally arbitrary (at the time of the writing the file is 5660o long + } + +}