Skip to content

Commit

Permalink
fix: wrong embed
Browse files Browse the repository at this point in the history
  • Loading branch information
williamfzc committed Mar 2, 2023
1 parent b204d18 commit 128e11d
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 4 deletions.
6 changes: 3 additions & 3 deletions assets/embed.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package assets

import "embed"
import _ "embed"

//go:embed *
var Static embed.FS
//go:embed marp
var Static []byte
8 changes: 8 additions & 0 deletions cmd/cgp/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"strings"

cgp "github.com/williamfzc/chat-gpt-ppt"
"github.com/williamfzc/chat-gpt-ppt/assets"
_ "github.com/williamfzc/chat-gpt-ppt/assets"
)

Expand Down Expand Up @@ -38,7 +39,14 @@ func main() {

// renderer
logger.Println("start rendering")

renderer := cgp.NewMarpRenderer()
tmpF, err := os.CreateTemp(os.TempDir(), "tmpMarp*")
panicIfErr(err)
defer os.Remove(tmpF.Name())
_ = os.WriteFile(tmpF.Name(), assets.Static, 0755)
renderer.SetBinPath(tmpF.Name())

for _, eachTopic := range topics {
renderer.AddTopic(eachTopic)
}
Expand Down
7 changes: 6 additions & 1 deletion renderer.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ func (t *Topic) ToMarkdown() string {
type Renderer interface {
AddTopic(*Topic)
RenderFile(outputPath string) error
SetBinPath(path string)
}

type MarpRenderer struct {
Expand All @@ -32,11 +33,15 @@ type MarpRenderer struct {

func NewMarpRenderer() Renderer {
return &MarpRenderer{
BinPath: "./assets/marp",
BinPath: "",
Topics: make([]*Topic, 0),
}
}

func (m *MarpRenderer) SetBinPath(path string) {
m.BinPath = path
}

func (m *MarpRenderer) AddTopic(topic *Topic) {
m.Topics = append(m.Topics, topic)
}
Expand Down
25 changes: 25 additions & 0 deletions renderer_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package chat_gpt_ppt

import (
"os"
"testing"

"github.com/williamfzc/chat-gpt-ppt/assets"
)

func TestRender(t *testing.T) {
renderer := NewMarpRenderer()
tmpF, err := os.CreateTemp(os.TempDir(), "tmpMarp*")
if err != nil {
panic(err)
}
defer os.Remove(tmpF.Name())
_ = os.WriteFile(tmpF.Name(), assets.Static, 0755)
renderer.SetBinPath(tmpF.Name())

renderer.AddTopic(&Topic{
Title: "title",
Content: "content",
})
err = renderer.RenderFile("ok.html")
}

0 comments on commit 128e11d

Please sign in to comment.