mirror of
				https://github.com/strapi/strapi.git
				synced 2025-10-31 09:56:44 +00:00 
			
		
		
		
	Test custom field exists
This commit is contained in:
		
							parent
							
								
									05c8b0f66e
								
							
						
					
					
						commit
						6456a33bf1
					
				| @ -70,10 +70,6 @@ const formatAttribute = (key, attribute) => { | |||||||
|   if (attribute.type === 'customField') { |   if (attribute.type === 'customField') { | ||||||
|     const customField = strapi.container.get('custom-fields').get(attribute.customField); |     const customField = strapi.container.get('custom-fields').get(attribute.customField); | ||||||
| 
 | 
 | ||||||
|     if (!customField) { |  | ||||||
|       throw new Error(`Could not find Custom Field: ${attribute.customField}`); |  | ||||||
|     } |  | ||||||
| 
 |  | ||||||
|     return { |     return { | ||||||
|       ...attribute, |       ...attribute, | ||||||
|       type: customField.type, |       type: customField.type, | ||||||
|  | |||||||
| @ -8,6 +8,7 @@ const strapi = { | |||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| describe('Custom fields registry', () => { | describe('Custom fields registry', () => { | ||||||
|  |   describe('add', () => { | ||||||
|     it('adds a custom field registered in a plugin', () => { |     it('adds a custom field registered in a plugin', () => { | ||||||
|       const mockCF = { |       const mockCF = { | ||||||
|         name: 'test', |         name: 'test', | ||||||
| @ -104,3 +105,26 @@ describe('Custom fields registry', () => { | |||||||
|       ); |       ); | ||||||
|     }); |     }); | ||||||
|   }); |   }); | ||||||
|  |   describe('get', () => { | ||||||
|  |     it('gets a registered custom field', () => { | ||||||
|  |       const mockCF = { | ||||||
|  |         name: 'test', | ||||||
|  |         plugin: 'plugintest', | ||||||
|  |         type: 'text', | ||||||
|  |       }; | ||||||
|  | 
 | ||||||
|  |       const customFields = customFieldsRegistry(strapi); | ||||||
|  |       customFields.add(mockCF); | ||||||
|  | 
 | ||||||
|  |       expect(customFields.get('plugin::plugintest.test')).toEqual(mockCF); | ||||||
|  |     }); | ||||||
|  | 
 | ||||||
|  |     it('throws when a custom field is not registered', () => { | ||||||
|  |       const customFields = customFieldsRegistry(strapi); | ||||||
|  | 
 | ||||||
|  |       expect(() => customFields.get('plugin::plugintest.test')).toThrowError( | ||||||
|  |         `Could not find Custom Field: plugin::plugintest.test` | ||||||
|  |       ); | ||||||
|  |     }); | ||||||
|  |   }); | ||||||
|  | }); | ||||||
|  | |||||||
| @ -11,7 +11,12 @@ const customFieldsRegistry = strapi => { | |||||||
|       return customFields; |       return customFields; | ||||||
|     }, |     }, | ||||||
|     get(customField) { |     get(customField) { | ||||||
|       return customFields[customField]; |       const registeredCustomField = customFields[customField]; | ||||||
|  |       if (!registeredCustomField) { | ||||||
|  |         throw new Error(`Could not find Custom Field: ${customField}`); | ||||||
|  |       } | ||||||
|  | 
 | ||||||
|  |       return registeredCustomField; | ||||||
|     }, |     }, | ||||||
|     add(customField) { |     add(customField) { | ||||||
|       const customFieldList = Array.isArray(customField) ? customField : [customField]; |       const customFieldList = Array.isArray(customField) ? customField : [customField]; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Mark Kaylor
						Mark Kaylor