mirror of
				https://github.com/open-metadata/OpenMetadata.git
				synced 2025-11-04 12:36:23 +00:00 
			
		
		
		
	fix: glossary term reviewers is not updating (#12707)
* fix: glossary term reviewers is not updating * test: add cypress test for glossary term reviewer
This commit is contained in:
		
							parent
							
								
									67d4886b14
								
							
						
					
					
						commit
						a28cdcda5c
					
				@ -174,6 +174,13 @@ const fillGlossaryTermDetails = (term, glossary, isMutually = false) => {
 | 
			
		||||
    .scrollIntoView()
 | 
			
		||||
    .should('be.visible')
 | 
			
		||||
    .type('https://test.com');
 | 
			
		||||
 | 
			
		||||
  // check for parent glossary reviewer
 | 
			
		||||
  if (glossary.name === NEW_GLOSSARY.name) {
 | 
			
		||||
    cy.get('[data-testid="user-tag"]')
 | 
			
		||||
      .contains(glossary.reviewer)
 | 
			
		||||
      .should('be.visible');
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const createGlossaryTerm = (term, glossary, isMutually = false) => {
 | 
			
		||||
@ -318,10 +325,7 @@ const updateTerms = (newTerm) => {
 | 
			
		||||
    .click()
 | 
			
		||||
    .type(newTerm);
 | 
			
		||||
  verifyResponseStatusCode('@getGlossaryTerm', 200);
 | 
			
		||||
  cy.get('.ant-select-item-option-content')
 | 
			
		||||
    .contains(newTerm)
 | 
			
		||||
    .should('be.visible')
 | 
			
		||||
    .click();
 | 
			
		||||
  cy.get('.ant-select-item-option-content').contains(newTerm).click();
 | 
			
		||||
  cy.get('[data-testid="saveAssociatedTag"]').should('be.visible').click();
 | 
			
		||||
  verifyResponseStatusCode('@saveGlossaryTermData', 200);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -42,15 +42,10 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
  isFormInModal = false,
 | 
			
		||||
  formRef: form,
 | 
			
		||||
}: AddGlossaryTermFormProps) => {
 | 
			
		||||
  const [reviewer, setReviewer] = useState<Array<EntityReference>>([]);
 | 
			
		||||
  const [owner, setOwner] = useState<EntityReference | undefined>();
 | 
			
		||||
  const [relatedTermsOptions, setRelatedTermsOptions] = useState<
 | 
			
		||||
    EntityReference[]
 | 
			
		||||
  >([]);
 | 
			
		||||
  const selectedOwner = Form.useWatch<EntityReference | undefined>(
 | 
			
		||||
    'owner',
 | 
			
		||||
    form
 | 
			
		||||
  );
 | 
			
		||||
  const owner = Form.useWatch<EntityReference | undefined>('owner', form);
 | 
			
		||||
  const reviewersList =
 | 
			
		||||
    Form.useWatch<EntityReference[]>('reviewers', form) ?? [];
 | 
			
		||||
 | 
			
		||||
@ -115,7 +110,7 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
      name: name.trim(),
 | 
			
		||||
      displayName: displayName?.trim(),
 | 
			
		||||
      description: description,
 | 
			
		||||
      reviewers: reviewer,
 | 
			
		||||
      reviewers: reviewersList,
 | 
			
		||||
      relatedTerms: editMode
 | 
			
		||||
        ? relatedTermsOptions
 | 
			
		||||
            .filter((item) => includes(relatedTerms, item.fullyQualifiedName))
 | 
			
		||||
@ -132,7 +127,7 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
 | 
			
		||||
  useEffect(() => {
 | 
			
		||||
    if (glossaryReviewers.length > 0) {
 | 
			
		||||
      setReviewer(glossaryReviewers);
 | 
			
		||||
      form.setFieldValue('reviewers', glossaryReviewers);
 | 
			
		||||
    }
 | 
			
		||||
    if (editMode && glossaryTerm) {
 | 
			
		||||
      const {
 | 
			
		||||
@ -160,11 +155,11 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
      if (reviewers) {
 | 
			
		||||
        setReviewer(reviewers);
 | 
			
		||||
        form.setFieldValue('reviewers', reviewers);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (owner) {
 | 
			
		||||
        setOwner(owner);
 | 
			
		||||
        form.setFieldValue('owner', owner);
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      if (relatedTerms && relatedTerms.length > 0) {
 | 
			
		||||
@ -321,7 +316,6 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
    formItemProps: {
 | 
			
		||||
      valuePropName: 'selectedUsers',
 | 
			
		||||
      trigger: 'onUpdate',
 | 
			
		||||
      initialValue: [],
 | 
			
		||||
    },
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
@ -411,11 +405,11 @@ const AddGlossaryTermForm = ({
 | 
			
		||||
 | 
			
		||||
        <div className="m-t-xss">
 | 
			
		||||
          {getField(ownerField)}
 | 
			
		||||
          {selectedOwner && (
 | 
			
		||||
          {owner && (
 | 
			
		||||
            <div className="tw-my-2" data-testid="owner-container">
 | 
			
		||||
              <UserTag
 | 
			
		||||
                id={selectedOwner.id}
 | 
			
		||||
                name={getEntityName(selectedOwner)}
 | 
			
		||||
                id={owner.id}
 | 
			
		||||
                name={getEntityName(owner)}
 | 
			
		||||
                size={UserTagSize.small}
 | 
			
		||||
              />
 | 
			
		||||
            </div>
 | 
			
		||||
 | 
			
		||||
@ -32,6 +32,7 @@ import {
 | 
			
		||||
  ListGlossaryTermsParams,
 | 
			
		||||
  patchGlossaryTerm,
 | 
			
		||||
} from 'rest/glossaryAPI';
 | 
			
		||||
import { getEncodedFqn } from 'utils/StringsUtils';
 | 
			
		||||
import { Glossary } from '../../generated/entity/data/glossary';
 | 
			
		||||
import { GlossaryTerm } from '../../generated/entity/data/glossaryTerm';
 | 
			
		||||
import { getEntityDeleteMessage } from '../../utils/CommonUtils';
 | 
			
		||||
@ -205,7 +206,7 @@ const GlossaryV1 = ({
 | 
			
		||||
    if (!isGlossaryActive && tab !== 'terms') {
 | 
			
		||||
      history.push(
 | 
			
		||||
        getGlossaryTermDetailsPath(
 | 
			
		||||
          selectedData.fullyQualifiedName || '',
 | 
			
		||||
          getEncodedFqn(selectedData.fullyQualifiedName || ''),
 | 
			
		||||
          'terms'
 | 
			
		||||
        )
 | 
			
		||||
      );
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user