mirror of
https://github.com/goharbor/harbor.git
synced 2024-11-23 10:45:45 +01:00
Merge pull request #6724 from jwangyangls/upgrade_clr_1.0.3_issue
fix_bug about ui and test
This commit is contained in:
commit
c80d9d95b2
@ -69,7 +69,7 @@
|
||||
<span class="tooltip-content">{{'TOOLTIP.EMPTY' | translate}}</span>
|
||||
</label>
|
||||
<div class="arrowSet" [hidden]="!(filterListData[i]?.name=='label')" (click)="openLabelList(selectedValue.value, i, $event)">
|
||||
<clr-icon shape="angle"></clr-icon>
|
||||
<clr-icon shape="angle" ></clr-icon>
|
||||
</div>
|
||||
<clr-icon shape="warning-standard" class="is-solid is-warning warning-icon" size="14" [hidden]="!deletedLabelCount || !(filterListData[i]?.name=='label')"></clr-icon>
|
||||
<clr-icon shape="times-circle" class="is-solid" (click)="deleteFilter(i)"></clr-icon>
|
||||
@ -81,7 +81,7 @@
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<clr-icon shape="plus-circle" class="is-solid plus-position" [hidden]="isFilterHide" (click)="addNewFilter()"></clr-icon>
|
||||
<clr-icon id="add-label-list" shape="plus-circle" class="is-solid plus-position" [hidden]="isFilterHide" (click)="addNewFilter()"></clr-icon>
|
||||
|
||||
</div>
|
||||
<!--Targets-->
|
||||
|
@ -1,7 +1,7 @@
|
||||
<section class="overview-section">
|
||||
<div class="title-wrapper">
|
||||
<div class="title-block arrow-block" *ngIf="withAdmiral">
|
||||
<clr-icon class="rotate-90 arrow-back" shape="arrow" size="36" (click)="goBack()"></clr-icon>
|
||||
<div class="title-block arrow-block" *ngIf="withAdmiral">
|
||||
<clr-icon class="rotate-90 arrow-back" shape="arrow" size="36" (click)="goBack()"></clr-icon>
|
||||
</div>
|
||||
<div class="title-block">
|
||||
<h2 sub-header-title class="custom-h2">{{repoName}}</h2>
|
||||
@ -14,19 +14,23 @@
|
||||
<span class="spinner spinner-inline" [hidden]="inProgress === false"></span>
|
||||
<ul id="configTabs" class="nav" role="tablist">
|
||||
<li role="presentation" class="nav-item">
|
||||
<button id="repo-info" class="btn btn-link nav-link" aria-controls="info" [class.active]='isCurrentTabLink("repo-info")' type="button" (click)='tabLinkClick("repo-info")'>{{'REPOSITORY.INFO' | translate}}</button>
|
||||
<button id="repo-info" class="btn btn-link nav-link" aria-controls="info" [class.active]='isCurrentTabLink("repo-info")'
|
||||
type="button" (click)='tabLinkClick("repo-info")'>{{'REPOSITORY.INFO' | translate}}</button>
|
||||
</li>
|
||||
<li role="presentation" class="nav-item">
|
||||
<button id="repo-image" class="btn btn-link nav-link active" aria-controls="image" [class.active]='isCurrentTabLink("repo-image")' type="button" (click)='tabLinkClick("repo-image")'>{{'REPOSITORY.IMAGE' | translate}}</button>
|
||||
<button id="repo-image" class="btn btn-link nav-link active" aria-controls="image" [class.active]='isCurrentTabLink("repo-image")'
|
||||
type="button" (click)='tabLinkClick("repo-image")'>{{'REPOSITORY.IMAGE' | translate}}</button>
|
||||
</li>
|
||||
</ul>
|
||||
<section id="info" role="tabpanel" aria-labelledby="repo-info" [hidden]='!isCurrentTabContent("info")'>
|
||||
<form #repoInfoForm="ngForm">
|
||||
<div id="info-edit-button">
|
||||
<button class="btn btn-sm" [disabled]="editing || !hasProjectAdminRole " (click)="editInfo()" ><clr-icon shape="pencil" size="16"></clr-icon> {{'BUTTON.EDIT' | translate}}</button>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 1024" preserveAspectRatio="xMinYMin" class="markdown">
|
||||
<path d="M950.154 192H73.846C33.127 192 0 225.12699999999995 0 265.846v492.308C0 798.875 33.127 832 73.846 832h876.308c40.721 0 73.846-33.125 73.846-73.846V265.846C1024 225.12699999999995 990.875 192 950.154 192zM576 703.875L448 704V512l-96 123.077L256 512v192H128V320h128l96 128 96-128 128-0.125V703.875zM767.091 735.875L608 512h96V320h128v192h96L767.091 735.875z"/>
|
||||
</svg>
|
||||
<button class="btn btn-sm" [disabled]="editing || !hasProjectAdminRole " (click)="editInfo()">
|
||||
<clr-icon shape="pencil" size="16"></clr-icon> {{'BUTTON.EDIT' | translate}}
|
||||
</button>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 1024" preserveAspectRatio="xMinYMin" class="markdown">
|
||||
<path d="M950.154 192H73.846C33.127 192 0 225.12699999999995 0 265.846v492.308C0 798.875 33.127 832 73.846 832h876.308c40.721 0 73.846-33.125 73.846-73.846V265.846C1024 225.12699999999995 990.875 192 950.154 192zM576 703.875L448 704V512l-96 123.077L256 512v192H128V320h128l96 128 96-128 128-0.125V703.875zM767.091 735.875L608 512h96V320h128v192h96L767.091 735.875z" />
|
||||
</svg>
|
||||
<span>{{ 'REPOSITORY.MARKDOWN' | translate }}</span>
|
||||
</div>
|
||||
<div *ngIf="!editing">
|
||||
@ -38,21 +42,21 @@
|
||||
</div>
|
||||
</div>
|
||||
<div *ngIf="editing">
|
||||
<textarea rows="5" name="info-edit-textarea" [(ngModel)]="imageInfo"></textarea>
|
||||
<textarea rows="5" name="info-edit-textarea" [(ngModel)]="imageInfo"></textarea>
|
||||
</div>
|
||||
<div class="btn-sm" *ngIf="editing">
|
||||
<button class="btn btn-primary" [disabled]="!hasChanges()" (click)="saveInfo()" >{{'BUTTON.SAVE' | translate}}</button>
|
||||
<button class="btn" (click)="cancelInfo()" >{{'BUTTON.CANCEL' | translate}}</button>
|
||||
<button class="btn btn-primary" [disabled]="!hasChanges()" (click)="saveInfo()">{{'BUTTON.SAVE' | translate}}</button>
|
||||
<button class="btn" (click)="cancelInfo()">{{'BUTTON.CANCEL' | translate}}</button>
|
||||
</div>
|
||||
<confirmation-dialog #confirmationDialog (confirmAction)="confirmCancel($event)"></confirmation-dialog>
|
||||
</form>
|
||||
</section>
|
||||
<section id="image" role="tabpanel" aria-labelledby="repo-image" [hidden]='!isCurrentTabContent("image")'>
|
||||
<div id=images-container>
|
||||
<hbr-tag ngProjectAs="clr-dg-row-detail" (tagClickEvent)="watchTagClickEvt($event)" (signatureOutput)="saveSignatures($event)" class="sub-grid-custom"
|
||||
[repoName]="repoName" [registryUrl]="registryUrl" [withNotary]="withNotary" [withClair]="withClair"
|
||||
[withAdmiral]="withAdmiral" [hasSignedIn]="hasSignedIn" [hasProjectAdminRole]="hasProjectAdminRole"
|
||||
[isGuest]="isGuest" [projectId]="projectId" [memberRoleID]="memberRoleID"></hbr-tag>
|
||||
<hbr-tag ngProjectAs="clr-dg-row-detail" (tagClickEvent)="watchTagClickEvt($event)" (signatureOutput)="saveSignatures($event)"
|
||||
class="sub-grid-custom" [repoName]="repoName" [registryUrl]="registryUrl" [withNotary]="withNotary"
|
||||
[withClair]="withClair" [withAdmiral]="withAdmiral" [hasSignedIn]="hasSignedIn" [hasProjectAdminRole]="hasProjectAdminRole"
|
||||
[isGuest]="isGuest" [projectId]="projectId" [memberRoleID]="memberRoleID"></hbr-tag>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
|
@ -259,4 +259,9 @@ hbr-image-name-input {
|
||||
|
||||
.color-gray {
|
||||
color: #565656;
|
||||
}
|
||||
}
|
||||
clr-datagrid {
|
||||
::ng-deep .datagrid-table {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
|
@ -39,6 +39,7 @@
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
position: absolute;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.grid-header-wrapper {
|
||||
|
@ -58,11 +58,11 @@
|
||||
<div class="form-group">
|
||||
<label for="selfReg">{{'CONFIG.MAIL_SSL' | translate}}</label>
|
||||
<!--for = selfReg?-->
|
||||
<clr-checkbox-wrapper>
|
||||
<clr-checkbox-wrapper id="emailSSL-wrapper">
|
||||
<input type="checkbox" clrCheckbox name="emailSSL" id="emailSSL" [(ngModel)]="currentConfig.email_ssl.value"
|
||||
[disabled]="disabled(currentConfig.email_ssl)" />
|
||||
<label>
|
||||
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right top-7">
|
||||
<a role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right top-7">
|
||||
<clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
|
||||
<span class="tooltip-content">{{'CONFIG.SSL_TOOLTIP' | translate}}</span>
|
||||
</a>
|
||||
@ -71,11 +71,11 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="insecure">{{'CONFIG.MAIL_INSECURE' | translate}}</label>
|
||||
<clr-checkbox-wrapper>
|
||||
<clr-checkbox-wrapper id="emailInsecure-wrapper">
|
||||
<input type="checkbox" clrCheckbox name="emaiInsecure" id="emailInsecure" [ngModel]="!currentConfig.email_insecure.value"
|
||||
[disabled]="disabled(currentConfig.email_insecure)" (ngModelChange)="setInsecureValue($event)" />
|
||||
<label>
|
||||
<a href="javascript:void(0)" role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right top-7">
|
||||
<a role="tooltip" aria-haspopup="true" class="tooltip tooltip-top-right top-7">
|
||||
<clr-icon shape="info-circle" class="info-tips-icon" size="24"></clr-icon>
|
||||
<span class="tooltip-content">{{'CONFIG.INSECURE_TOOLTIP' | translate}}</span>
|
||||
</a>
|
||||
|
@ -191,11 +191,9 @@ Config Email
|
||||
Input Text xpath=//*[@id="emailPassword"] example
|
||||
Input Text xpath=//*[@id="emailFrom"] example<example@vmware.com>
|
||||
Sleep 1
|
||||
Mouse Down xpath=//*[@id="emailSSL"]
|
||||
Mouse Up xpath=//*[@id="emailSSL"]
|
||||
Click Element xpath=//clr-checkbox-wrapper[@id="emailSSL-wrapper"]//label
|
||||
Sleep 1
|
||||
Mouse Down xpath=//*[@id="emailInsecure"]
|
||||
Mouse Up xpath=//*[@id="emailInsecure"]
|
||||
Click Element xpath=//clr-checkbox-wrapper[@id="emailInsecure-wrapper"]//label
|
||||
Sleep 1
|
||||
Click Element xpath=${config_email_save_button_xpath}
|
||||
Sleep 6
|
||||
|
@ -34,7 +34,7 @@ ${link_to_registries} //clr-modal//span[contains(.,'Endpoint')]
|
||||
${new_endpoint_button} //hbr-endpoint//button[contains(.,'New')]
|
||||
${rule_name} //input[@id='ruleName']
|
||||
${source_project} //input[@value='name']
|
||||
${source_image_filter_add} //hbr-create-edit-rule/clr-modal/div/div[1]/div/div[1]/div/div[2]/form/section/div[4]/clr-icon
|
||||
${source_image_filter_add} //hbr-create-edit-rule/clr-modal//clr-icon[@id="add-label-list"]
|
||||
${source_iamge_repo_filter} //hbr-create-edit-rule//section/div[4]/div/div[1]/div/label/input
|
||||
${source_image_tag_filter} //hbr-create-edit-rule//section/div[4]/div/div[2]/div/label/input
|
||||
${rule_target_select} //select[@id='ruleTarget']
|
||||
@ -42,7 +42,7 @@ ${rule_trigger_select} //select[@id="ruleTrigger"]
|
||||
${schedule_type_select} //select[@name="scheduleType"]
|
||||
${schedule_day_select} //select[@name="scheduleDay"]
|
||||
${shcedule_time} //input[@type="time"]
|
||||
${destination_insecure_checkbox} //hbr-create-edit-endpoint/clr-modal//input[@id="clr-checkbox-destination_insecure"]
|
||||
${destination_insecure_checkbox} //hbr-create-edit-endpoint/clr-modal//input[@id="destination_insecure"]
|
||||
${ping_test_button} //button[contains(.,'Test')]
|
||||
${nav_to_registries} //clr-vertical-nav//span[contains(.,'Registries')]
|
||||
${nav_to_replications} //clr-vertical-nav//span[contains(.,'Replications')]
|
||||
|
@ -136,8 +136,8 @@ Verify Project Setting
|
||||
\ Run Keyword If ${contenttrust} == "false" Checkbox Should Not Be Checked //clr-checkbox-wrapper[@name='content-trust']//label
|
||||
\ Run Keyword If ${preventrunning} == "true" Checkbox Should Be Checked //div[@id='prevent-vulenrability-image']//clr-checkbox-wrapper//label
|
||||
\ Run Keyword If ${preventrunning} == "false" Checkbox Should Not Be Checked //div[@id='prevent-vulenrability-image']//clr-checkbox-wrapper//label
|
||||
\ Run Keyword If ${scanonpush} == "true" Checkbox Should Be Checked //clr-checkbox-wrapper[@id='scan-image-on-push-wrapper']//label
|
||||
\ Run Keyword If ${scanonpush} == "true" Checkbox Should Not Be Checked //clr-checkbox-wrapper[@id='scan-image-on-push-wrapper']//label
|
||||
\ Run Keyword If ${scanonpush} == "true" Checkbox Should Be Checked //clr-checkbox-wrapper[@id='scan-image-on-push-wrapper']//input
|
||||
\ Run Keyword If ${scanonpush} == "true" Checkbox Should Not Be Checked //clr-checkbox-wrapper[@id='scan-image-on-push-wrapper']//input
|
||||
\ Close Browser
|
||||
|
||||
Verify System Setting
|
||||
|
Loading…
Reference in New Issue
Block a user