2022-06-08 21:46:39 +00:00
// Copyright 2022 The Gitea Authors. All rights reserved.
2022-11-27 18:20:29 +00:00
// SPDX-License-Identifier: MIT
2022-06-08 21:46:39 +00:00
package console
import (
2024-11-22 05:48:09 +00:00
"context"
2022-06-08 21:46:39 +00:00
"strings"
"testing"
"code.gitea.io/gitea/modules/markup"
"github.com/stretchr/testify/assert"
)
func TestRenderConsole ( t * testing . T ) {
var render Renderer
kases := map [ string ] string {
"\x1b[37m\x1b[40mnpm\x1b[0m \x1b[0m\x1b[32minfo\x1b[0m \x1b[0m\x1b[35mit worked if it ends with\x1b[0m ok" : "<span class=\"term-fg37 term-bg40\">npm</span> <span class=\"term-fg32\">info</span> <span class=\"term-fg35\">it worked if it ends with</span> ok" ,
}
for k , v := range kases {
var buf strings . Builder
canRender := render . CanRender ( "test" , strings . NewReader ( k ) )
assert . True ( t , canRender )
2024-11-22 05:48:09 +00:00
err := render . Render ( markup . NewRenderContext ( context . Background ( ) ) , strings . NewReader ( k ) , & buf )
2022-06-08 21:46:39 +00:00
assert . NoError ( t , err )
assert . EqualValues ( t , v , buf . String ( ) )
}
}