mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 03:02:14 +01:00 
			
		
		
		
	Document: https://gitea.com/gitea/docs/pulls/180 
		
			
				
	
	
		
			38 lines
		
	
	
		
			920 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			920 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2024 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package webtheme
 | |
| 
 | |
| import (
 | |
| 	"testing"
 | |
| 
 | |
| 	"github.com/stretchr/testify/assert"
 | |
| )
 | |
| 
 | |
| func TestParseThemeMetaInfo(t *testing.T) {
 | |
| 	m := parseThemeMetaInfoToMap(`gitea-theme-meta-info {
 | |
| 	--k1: "v1";
 | |
| 	--k2: "v\"2";
 | |
| 	--k3: 'v3';
 | |
| 	--k4: 'v\'4';
 | |
| 	--k5: v5;
 | |
| }`)
 | |
| 	assert.Equal(t, map[string]string{
 | |
| 		"--k1": "v1",
 | |
| 		"--k2": `v"2`,
 | |
| 		"--k3": "v3",
 | |
| 		"--k4": "v'4",
 | |
| 		"--k5": "v5",
 | |
| 	}, m)
 | |
| 
 | |
| 	// if an auto theme imports others, the meta info should be extracted from the last one
 | |
| 	// the meta in imported themes should be ignored to avoid incorrect overriding
 | |
| 	m = parseThemeMetaInfoToMap(`
 | |
| @media (prefers-color-scheme: dark) { gitea-theme-meta-info { --k1: foo; } }
 | |
| @media (prefers-color-scheme: light) { gitea-theme-meta-info { --k1: bar; } }
 | |
| gitea-theme-meta-info {
 | |
| 	--k2: real;
 | |
| }`)
 | |
| 	assert.Equal(t, map[string]string{"--k2": "real"}, m)
 | |
| }
 |