feat(11.1-04): add the Backend section, the remaining Services pages and the concept map links
- docs/backend: admin controllers, forms, lists and filters, relation manager, users and permissions, settings, partials and widgets, admin SPA - docs/services: storage, outbound HTTP, realtime, Web Push, search, parity testing and the Frontend and AJAX (not provided) page - Examples for cabana (with testdata/docs YAML), fetchguard, lighthouse and its centrifugo driver, flare, beachcomber and typesense, tide; lighthouse and beachcomber TestDocs* regions run on their Postgres harnesses - concept map rows link their guide pages and the not-provided rows the Frontend and AJAX page; index lists Backend, Database and Services - TestDocsRequiredPages asserts the D-08 section order
This commit is contained in:
47
modules/beachcomber/export_docs_test.go
Normal file
47
modules/beachcomber/export_docs_test.go
Normal file
@@ -0,0 +1,47 @@
|
||||
package beachcomber
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.golem15.com/golem15/summercms/modules/backpack"
|
||||
"git.golem15.com/golem15/summercms/modules/compass"
|
||||
"git.golem15.com/golem15/summercms/modules/lagoon"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
// DocsApp returns an app with the given config settings on a fresh migrated
|
||||
// database of this package's Postgres harness, with the database published,
|
||||
// for the database-backed docs examples in example_test.go. It skips under
|
||||
// -short and fails when the harness has no database, like the package's
|
||||
// other database tests.
|
||||
func DocsApp(t *testing.T, settings map[string]any) (*backpack.App, *gorm.DB) {
|
||||
t.Helper()
|
||||
db, dsn := migratedDB(t)
|
||||
cfg, err := compass.Open(compass.Options{Dir: t.TempDir(), Env: "testing", Environ: []string{}})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := cfg.Set("database.dsn", dsn); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for k, v := range settings {
|
||||
if err := cfg.Set(k, v); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
app := backpack.New(cfg)
|
||||
gdb, err := lagoon.Use(t.Context(), db)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := lagoon.Publish(app, db, gdb); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
return app, gdb
|
||||
}
|
||||
|
||||
// DocsUseEngine replaces the engine of svc, for docs examples whose toy
|
||||
// engine must not join the global engine registry.
|
||||
func DocsUseEngine(svc *Service, e Engine) {
|
||||
svc.engine = e
|
||||
}
|
||||
Reference in New Issue
Block a user