data

package
v0.0.0-...-4e5a105 Latest Latest
Warning

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

Go to latest
Published: Jun 18, 2018 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	UserKind = "user"

	UserDomain = "example.com"

	User1ID          = "1"
	User1Email       = "jane@" + UserDomain
	User1GivenName   = "Jane"
	User1FamilyName  = "Doe"
	User1Aliases     = []string{"Janie", "Roe"}
	User1Age         = 34
	User1RefreshTime = time.Date(2018, 2, 1, 5, 23, 3, 0, time.UTC)
	User1Data        = `{"Email": "jane@example.com", "Name": {"GivenName": "Jane", "FamilyName": "Doe", "Aliases": ["Janie", "Roe"]}, "Age": 34}`
	User1CreateTime  = createTime
	User1UpdateTime  = time.Date(2002, 3, 4, 5, 6, 7, 0, time.UTC)

	User2ID          = "2"
	User2Email       = "john@" + UserDomain
	User2GivenName   = "John"
	User2FamilyName  = "Smith"
	User2Aliases     = []string{"Richard", "Johnny", "Roe"}
	User2Age         = 23
	User2RefreshTime = time.Date(2018, 3, 2, 1, 4, 43, 0, time.UTC)
	User2Data        = `` /* 135-byte string literal not displayed */
	User2CreateTime  = User1CreateTime.Add(time.Millisecond)
	User2UpdateTime  = now

	User3ID         = "3"
	User3CreateTime = User2CreateTime.Add(30 * days)
	User3UpdateTime = now.Add(-24 * time.Hour)

	UserRows = []Row{
		{
			Kind:            UserKind,
			ID:              User1ID,
			UniqueStringKey: User1Email,
			StringKey:       UserDomain,
			NumericKey:      50,
			TimeKey:         User1RefreshTime,
			Data:            User1Data,
			CreateTime:      User1CreateTime,
			UpdateTime:      User1UpdateTime,
		},
		{
			Kind:            UserKind,
			ID:              User2ID,
			UniqueStringKey: User2Email,
			StringKey:       UserDomain,
			NumericKey:      10,
			TimeKey:         User2RefreshTime,
			Data:            User2Data,
			CreateTime:      User2CreateTime,
			UpdateTime:      User2UpdateTime,
		},
		{
			Kind:       UserKind,
			ID:         User3ID,
			NumericKey: 3,
			CreateTime: User3CreateTime,
			UpdateTime: User3UpdateTime,
		},
	}
)

Functions

func RequireUser1

func RequireUser1(t *testing.T, user User, checkTime bool)

func RequireUser2

func RequireUser2(t *testing.T, user User, checkTime bool)

func RequireUser3

func RequireUser3(t *testing.T, user User)

func RequireUserPtr1

func RequireUserPtr1(t *testing.T, user UserPtr, checkTime bool)

func RequireUserPtr2

func RequireUserPtr2(t *testing.T, user UserPtr, checkTime bool)

func RequireUserPtr3

func RequireUserPtr3(t *testing.T, user UserPtr)

Types

type Name

type Name struct {
	GivenName  string   `jdb:",omitempty"`
	FamilyName string   `jdb:",omitempty"`
	Aliases    []string `jdb:",omitempty"`
}

type NamePtr

type NamePtr struct {
	GivenName  *string    `jdb:",omitempty"`
	FamilyName *string    `jdb:",omitempty"`
	Aliases    *[]*string `jdb:",omitempty"`
}

type Row

type Row struct {
	Kind            string
	ID              string
	ParentKind      string
	ParentID        string
	UniqueStringKey string
	StringKey       string
	NumericKey      float64
	TimeKey         time.Time
	Data            string
	CreateTime      time.Time
	UpdateTime      time.Time
}

type User

type User struct {
	Kind        string    `jdb:"-kind"`
	ID          string    `jdb:"-id"`
	Email       string    `jdb:",uniquestringkey"`
	Name        Name      `jdb:",omitempty"`
	Age         int       `jdb:",omitempty"`
	RefreshTime time.Time `jdb:",omitempty"`
	CreateTime  time.Time `jdb:"-createtime"`
	UpdateTime  time.Time `jdb:"-updatetime"`
}

func (User) DatabaseNumericKey

func (u User) DatabaseNumericKey() (*float64, bool)

func (User) DatabaseStringKey

func (u User) DatabaseStringKey() (*string, bool)

func (User) DatabaseTimeKey

func (u User) DatabaseTimeKey() (*time.Time, bool)

type UserMeta

type UserMeta struct {
	ID         string    `jdb:"-id"`
	Email      string    `jdb:",uniquestringkey"`
	CreateTime time.Time `jdb:"-createtime"`
}

type UserMetaPtr

type UserMetaPtr struct {
	ID         *string    `jdb:"-id"`
	Email      *string    `jdb:",uniquestringkey"`
	CreateTime *time.Time `jdb:"-createtime"`
}

type UserPtr

type UserPtr struct {
	Kind        *string    `jdb:"-kind"`
	ID          *string    `jdb:"-id"`
	Email       *string    `jdb:",uniquestringkey"`
	Name        *NamePtr   `jdb:",omitempty"`
	Age         *int       `jdb:",omitempty"`
	RefreshTime *time.Time `jdb:",omitempty"`
	CreateTime  *time.Time `jdb:"-createtime"`
	UpdateTime  *time.Time `jdb:"-updatetime"`
}

func (UserPtr) DatabaseNumericKey

func (u UserPtr) DatabaseNumericKey() (*float64, bool)

func (UserPtr) DatabaseStringKey

func (u UserPtr) DatabaseStringKey() (*string, bool)

func (UserPtr) DatabaseTimeKey

func (u UserPtr) DatabaseTimeKey() (*time.Time, bool)

Jump to

Keyboard shortcuts

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