Compare commits
	
		
			No commits in common. "c73dfc0d3af4ed74c0042e5621f8091e2174c420" and "b8fc87385065f3a625853130ac2cfab243c91c30" have entirely different histories.
		
	
	
		
			
				c73dfc0d3a
			
			...
			
				b8fc873850
			
		
	
		
					 16 changed files with 56 additions and 72 deletions
				
			
		|  | @ -75,6 +75,6 @@ tasks: | |||
|     sources: | ||||
|       - '**/*.go' | ||||
|     generates: | ||||
|       - build/combluotion | ||||
|       - build/lenore | ||||
|     cmds: | ||||
|       - go build -o build/combluotion cmd/combluotion/main.go | ||||
|       - go build -o build/lenore cmd/lenore/main.go | ||||
|  |  | |||
							
								
								
									
										8
									
								
								app.go
									
										
									
									
									
								
							
							
						
						
									
										8
									
								
								app.go
									
										
									
									
									
								
							|  | @ -1,13 +1,13 @@ | |||
| package combluotion | ||||
| package lenore | ||||
| 
 | ||||
| import ( | ||||
| 	"errors" | ||||
| 	"fmt" | ||||
| 	"time" | ||||
| 
 | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	_ "codeberg.org/danjones000/combluotion/imports" | ||||
| 	"codeberg.org/danjones000/combluotion/store" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	_ "codeberg.org/danjones000/lenore/imports" | ||||
| 	"codeberg.org/danjones000/lenore/store" | ||||
| 	vocab "github.com/go-ap/activitypub" | ||||
| 	"github.com/go-ap/client" | ||||
| 	boxap "github.com/go-ap/fedbox/activitypub" | ||||
|  |  | |||
							
								
								
									
										18
									
								
								app_test.go
									
										
									
									
									
								
							
							
						
						
									
										18
									
								
								app_test.go
									
										
									
									
									
								
							|  | @ -1,11 +1,11 @@ | |||
| package combluotion | ||||
| package lenore | ||||
| 
 | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"testing" | ||||
| 
 | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/combluotion/internal/testmocks" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	"codeberg.org/danjones000/lenore/internal/testmocks" | ||||
| 	vocab "github.com/go-ap/activitypub" | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
|  | @ -22,7 +22,7 @@ func TestDefaultEnvironment(t *testing.T) { | |||
| 	a, er := NewApp("0.0.0", c, testmocks.GetStore()) | ||||
| 	assert.NoError(t, er) | ||||
| 	if assert.NotNil(t, a) { | ||||
| 		assert.Equal(t, config.Dev, a.Environment()) | ||||
| 		assert.Equal(t, config.DEV, a.Environment()) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
|  | @ -31,11 +31,11 @@ func TestGivenEnvironment(t *testing.T) { | |||
| 		given config.Env | ||||
| 		exp   config.Env | ||||
| 	}{ | ||||
| 		{config.Dev, config.Dev}, | ||||
| 		{config.Prod, config.Prod}, | ||||
| 		{config.Qa, config.Qa}, | ||||
| 		{config.Env("foo"), config.Dev}, | ||||
| 		{config.Env("✨"), config.Dev}, | ||||
| 		{config.DEV, config.DEV}, | ||||
| 		{config.PROD, config.PROD}, | ||||
| 		{config.QA, config.QA}, | ||||
| 		{config.Env("foo"), config.DEV}, | ||||
| 		{config.Env("✨"), config.DEV}, | ||||
| 	} | ||||
| 
 | ||||
| 	for _, c := range cases { | ||||
|  |  | |||
|  | @ -6,22 +6,20 @@ import ( | |||
| 	"fmt" | ||||
| 	"os" | ||||
| 
 | ||||
| 	"codeberg.org/danjones000/combluotion" | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/combluotion/store" | ||||
| 	"codeberg.org/danjones000/lenore" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	"codeberg.org/danjones000/lenore/store" | ||||
| ) | ||||
| 
 | ||||
| func main() { | ||||
| 	f := getTomlFile() | ||||
| 	defer os.Remove(f) | ||||
| 	conf, err := config.LoadFromToml(f) | ||||
| 	conf, err := config.LoadFromToml(getTomlFile()) | ||||
| 	quitErr(err) | ||||
| 	fmt.Printf("%+v\n", conf) | ||||
| 
 | ||||
| 	db, err := store.MakeStore(conf.Conn.Store, conf) | ||||
| 	quitErr(err) | ||||
| 
 | ||||
| 	app, err := combluotion.NewApp(config.Version, conf, db) | ||||
| 	app, err := lenore.NewApp(config.Version, conf, db) | ||||
| 	quitErr(err) | ||||
| 
 | ||||
| 	fmt.Println(app) | ||||
|  | @ -30,7 +28,6 @@ func main() { | |||
| 	fmt.Println(string(out)) | ||||
| 	fmt.Println(serv.ID) | ||||
| } | ||||
| 
 | ||||
| func quitErr(err error) { | ||||
| 	if err != nil { | ||||
| 		panic(err) | ||||
|  | @ -39,7 +36,9 @@ func quitErr(err error) { | |||
| 
 | ||||
| func getTomlFile() string { | ||||
| 	tmp, err := os.CreateTemp("", "*.toml") | ||||
| 	quitErr(err) | ||||
| 	if err != nil { | ||||
| 		panic(err) | ||||
| 	} | ||||
| 	defer tmp.Close() | ||||
| 
 | ||||
| 	p := tmp.Name() | ||||
|  | @ -8,12 +8,12 @@ import ( | |||
| 
 | ||||
| func TestEnvDefaultsToDev(t *testing.T) { | ||||
| 	c := Config{} | ||||
| 	assert.Equal(t, Dev, c.Environment()) | ||||
| 	assert.Equal(t, DEV, c.Environment()) | ||||
| } | ||||
| 
 | ||||
| func TestInvalidEnvReturnsDev(t *testing.T) { | ||||
| 	c := Config{Env: Env("foobar")} | ||||
| 	assert.Equal(t, Dev, c.Environment()) | ||||
| 	assert.Equal(t, DEV, c.Environment()) | ||||
| } | ||||
| 
 | ||||
| func TestValidEnvReturnsCorrect(t *testing.T) { | ||||
|  |  | |||
|  | @ -3,24 +3,24 @@ package config | |||
| type Env string | ||||
| 
 | ||||
| const ( | ||||
| 	Dev  Env = "dev" | ||||
| 	Prod Env = "prod" | ||||
| 	Qa   Env = "qa" | ||||
| 	Test Env = "test" | ||||
| 	DEV  Env = "dev" | ||||
| 	PROD Env = "prod" | ||||
| 	QA   Env = "qa" | ||||
| 	TEST Env = "test" | ||||
| ) | ||||
| 
 | ||||
| var Envs = [...]Env{ | ||||
| 	Dev, | ||||
| 	Prod, | ||||
| 	Qa, | ||||
| 	Test, | ||||
| 	DEV, | ||||
| 	PROD, | ||||
| 	QA, | ||||
| 	TEST, | ||||
| } | ||||
| 
 | ||||
| func ValidEnvOrDev(e Env) Env { | ||||
| 	if ValidEnv(e) { | ||||
| 		return e | ||||
| 	} | ||||
| 	return Dev | ||||
| 	return DEV | ||||
| } | ||||
| 
 | ||||
| func ValidEnv(env Env) bool { | ||||
|  |  | |||
|  | @ -21,10 +21,10 @@ func TestValidEnv(t *testing.T) { | |||
| 		e   Env | ||||
| 		exp bool | ||||
| 	}{ | ||||
| 		{Dev, true}, | ||||
| 		{Prod, true}, | ||||
| 		{Qa, true}, | ||||
| 		{Test, true}, | ||||
| 		{DEV, true}, | ||||
| 		{PROD, true}, | ||||
| 		{QA, true}, | ||||
| 		{TEST, true}, | ||||
| 		{Env("foobar"), false}, | ||||
| 		{Env(""), false}, | ||||
| 		{Env("✨"), false}, | ||||
|  | @ -42,13 +42,13 @@ func TestValidEnvOrDev(t *testing.T) { | |||
| 		give Env | ||||
| 		exp  Env | ||||
| 	}{ | ||||
| 		{Dev, Dev}, | ||||
| 		{Prod, Prod}, | ||||
| 		{Qa, Qa}, | ||||
| 		{Test, Test}, | ||||
| 		{Env("foobar"), Dev}, | ||||
| 		{Env(""), Dev}, | ||||
| 		{Env("✨"), Dev}, | ||||
| 		{DEV, DEV}, | ||||
| 		{PROD, PROD}, | ||||
| 		{QA, QA}, | ||||
| 		{TEST, TEST}, | ||||
| 		{Env("foobar"), DEV}, | ||||
| 		{Env(""), DEV}, | ||||
| 		{Env("✨"), DEV}, | ||||
| 	} | ||||
| 
 | ||||
| 	for _, c := range cases { | ||||
|  |  | |||
|  | @ -15,7 +15,6 @@ func TestLoadTomlMissing(t *testing.T) { | |||
| 
 | ||||
| func TestLoadTomlGood(t *testing.T) { | ||||
| 	tmp, _ := os.CreateTemp("", "*.toml") | ||||
| 	defer os.Remove(tmp.Name()) | ||||
| 	defer tmp.Close() | ||||
| 	fmt.Fprintln(tmp, `name = "Cool"`) | ||||
| 	fmt.Fprintln(tmp, "[conn]") | ||||
|  |  | |||
|  | @ -1,9 +1,9 @@ | |||
| package config | ||||
| 
 | ||||
| const ( | ||||
| 	AppName   string = "combluotion" | ||||
| 	AppName   string = "lenore" | ||||
| 	Version   string = "0.0.1" | ||||
| 	Url       string = "https://codeberg.org/danjones000/combluotion" | ||||
| 	Url       string = "https://codeberg.org/danjones000/lenore" | ||||
| 	DevUrl    string = "https://codeberg.org/danjones000" | ||||
| 	Email     string = "danjones@goodevilgenius.org" | ||||
| 	UserAgent string = AppName + "/" + Version + " (" + Url + "; " + Email + ")" | ||||
|  |  | |||
							
								
								
									
										2
									
								
								go.mod
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
										
									
									
									
								
							|  | @ -1,4 +1,4 @@ | |||
| module codeberg.org/danjones000/combluotion | ||||
| module codeberg.org/danjones000/lenore | ||||
| 
 | ||||
| go 1.23.1 | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| package imports | ||||
| 
 | ||||
| import ( | ||||
| 	_ "codeberg.org/danjones000/combluotion/store/sqlite" | ||||
| 	_ "codeberg.org/danjones000/lenore/store/sqlite" | ||||
| ) | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| package testmocks | ||||
| 
 | ||||
| import ( | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	vocab "github.com/go-ap/activitypub" | ||||
| 	"github.com/go-ap/filters" | ||||
| ) | ||||
|  |  | |||
|  | @ -4,7 +4,7 @@ import ( | |||
| 	"errors" | ||||
| 	"fmt" | ||||
| 
 | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| ) | ||||
| 
 | ||||
| var ErrNoFactory = errors.New("unknown factory") | ||||
|  | @ -26,10 +26,6 @@ func GetFactory(name string) StoreFactory { | |||
| } | ||||
| 
 | ||||
| func MakeStore(name string, conf config.Config) (Store, error) { | ||||
| 	if name == "" { | ||||
| 		name = conf.Conn.Store | ||||
| 	} | ||||
| 
 | ||||
| 	f, ok := factories[name] | ||||
| 	if !ok { | ||||
| 		return nil, fmt.Errorf("%w: %s", ErrNoFactory, name) | ||||
|  |  | |||
|  | @ -3,8 +3,8 @@ package store | |||
| import ( | ||||
| 	"testing" | ||||
| 
 | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/combluotion/internal/testmocks" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	"codeberg.org/danjones000/lenore/internal/testmocks" | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
| 
 | ||||
|  | @ -45,13 +45,3 @@ func TestMakeStoreNoError(t *testing.T) { | |||
| 	assert.NotNil(t, s) | ||||
| 	assert.NoError(t, e) | ||||
| } | ||||
| 
 | ||||
| func TestMakeStoreNoName(t *testing.T) { | ||||
| 	AddFactory("mock", f) | ||||
| 	defer delete(factories, "mock") | ||||
| 	s, e := MakeStore("", config.Config{ | ||||
| 		Conn: config.ConnSettings{Store: "mock"}, | ||||
| 	}) | ||||
| 	assert.NotNil(t, s) | ||||
| 	assert.NoError(t, e) | ||||
| } | ||||
|  |  | |||
|  | @ -1,8 +1,8 @@ | |||
| package sqlite | ||||
| 
 | ||||
| import ( | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/combluotion/store" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	"codeberg.org/danjones000/lenore/store" | ||||
| 	"github.com/go-ap/storage-sqlite" | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| package store | ||||
| 
 | ||||
| import ( | ||||
| 	"codeberg.org/danjones000/combluotion/config" | ||||
| 	"codeberg.org/danjones000/lenore/config" | ||||
| 	st "github.com/go-ap/fedbox/storage" | ||||
| 	proc "github.com/go-ap/processing" | ||||
| 	"github.com/openshift/osin" | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue