test

package
v0.0.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 2, 2023 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Organizations.
	COKE  = "Coke"
	PEPSI = "Pepsi"

	// Instances.
	AMERICAS = "Americas"
	EUROPE   = "Europe"
)
View Source
const (
	TENANT_AUDITOR  = "tenant_auditor"
	TENANT_ADMIN    = "tenant_admin"
	SERVICE_AUDITOR = "service_auditor"
	SERVICE_ADMIN   = "service_admin"
)

Service roles for test cases.

Variables

View Source
var (
	RANDOM_ID              string = uuid.New().String()
	TestMetadataAuthorizer        = &authorizer.MetadataBasedAuthorizer{}
	TestInstancer                 = &authorizer.SimpleInstancer{}
	ServiceAdminCtx               = TestMetadataAuthorizer.GetAuthContext("", SERVICE_ADMIN)
	ServiceAuditorCtx             = TestMetadataAuthorizer.GetAuthContext("", SERVICE_AUDITOR)
	CokeAdminCtx                  = TestMetadataAuthorizer.GetAuthContext(COKE, TENANT_ADMIN)
	CokeAuditorCtx                = TestMetadataAuthorizer.GetAuthContext(COKE, TENANT_AUDITOR)
	PepsiAdminCtx                 = TestMetadataAuthorizer.GetAuthContext(PEPSI, TENANT_ADMIN)
	PepsiAuditorCtx               = TestMetadataAuthorizer.GetAuthContext(PEPSI, TENANT_AUDITOR)

	AmericasCokeAdminCtx   = TestInstancer.WithInstanceId(CokeAdminCtx, AMERICAS)
	AmericasCokeAuditorCtx = TestInstancer.WithInstanceId(CokeAuditorCtx, AMERICAS)
	AmericasPepsiAdminCtx  = TestInstancer.WithInstanceId(PepsiAdminCtx, AMERICAS)
	EuropeCokeAdminCtx     = TestInstancer.WithInstanceId(CokeAdminCtx, EUROPE)
	EuropeCokeAuditorCtx   = TestInstancer.WithInstanceId(CokeAuditorCtx, EUROPE)
)

TODO: Get rid of global variables.

Functions

func DropAllTables

func DropAllTables(ds datastore.DataStore)

func InitAuthContexts added in v0.0.13

func InitAuthContexts()

func InitLog added in v0.0.13

func InitLog() *logrus.Logger

func InitMetadataAuthorizer added in v0.0.13

func InitMetadataAuthorizer()

func InitTestData added in v0.0.13

func InitTestData(dbName string)

func PrepareInput

func PrepareInput() (*App, *AppUser, *AppUser)

func RecreateAllTables

func RecreateAllTables(ds datastore.DataStore)

func SetupDataStore added in v0.0.6

func SetupDataStore(dbName string) (datastore.DataStore, protostore.ProtoStore)

func SetupDataStoreNoInstancer added in v0.0.10

func SetupDataStoreNoInstancer(dbName string) (datastore.DataStore, protostore.ProtoStore)

func SetupDbTables

func SetupDbTables(ds datastore.DataStore) (*App, *AppUser, *AppUser)

Types

type App

type App struct {
	Id        string `gorm:"primaryKey;column:application_id"`
	Name      string
	TenantId  string `gorm:"primaryKey;column:org_id"`
	CreatedAt time.Time
	UpdatedAt time.Time
	DeletedAt gorm.DeletedAt
}

func (App) AreNonKeyFieldsEmpty

func (a App) AreNonKeyFieldsEmpty() bool

func (App) String added in v0.0.8

func (a App) String() string

func (App) TableName

func (a App) TableName() string

type AppUser

type AppUser struct {
	Id             string `gorm:"primaryKey;column:user_id"`
	Name           string
	Email          string
	EmailConfirmed bool
	NumFollowing   int32
	NumFollowers   int64
	AppId          string
	Msg            []byte
	CreatedAt      time.Time
	UpdatedAt      time.Time
	DeletedAt      gorm.DeletedAt
}

func (AppUser) AreNonKeyFieldsEmpty

func (a AppUser) AreNonKeyFieldsEmpty() bool

func (AppUser) String added in v0.0.8

func (a AppUser) String() string

type AppUserSlice

type AppUserSlice []AppUser // Needed for sorting

func (AppUserSlice) Len

func (a AppUserSlice) Len() int

func (AppUserSlice) Less

func (a AppUserSlice) Less(x, y int) bool

func (AppUserSlice) Swap

func (a AppUserSlice) Swap(i, j int)

type Group

type Group struct {
	Id         string `gorm:"primaryKey"`
	Name       string
	Revision   int
	InstanceId string `gorm:"primaryKey"`
}

func (Group) String added in v0.0.8

func (g Group) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL