func benchmarkStoreState(b *testing.B, c *foosbot.Context) { b.ResetTimer() b.ReportAllocs() for i := 0; i < b.N; i++ { c.Store() } }
func statsCommand(ctx *foosbot.Context, statement *parsing.StatStatement) string { stats, err := ctx.ExecuteStats(*statement) if err != nil { return err.Error() } return ctx.ReportStats(stats) }
func benchmarkLoadState(b *testing.B, c *foosbot.Context) { b.ResetTimer() b.ReportAllocs() for i := 0; i < b.N; i++ { c.Reset() c.Load() } }
func addMatchCommand(ctx *foosbot.Context, statement *parsing.MatchStatement) string { err := ctx.ExecuteMatch(*statement) if err != nil { panic(err) } total := statement.TeamOneScore + statement.TeamTwoScore return fmt.Sprintf("%d matches registered to history.", total) }
func addMatches(c *foosbot.Context, outcomes []*foosbot.Outcome) { for k := 0; k < len(outcomes); k++ { c.AddMatchWithOutcome(outcomes[k]) } }
func getLeaderboard(ctx *foosbot.Context) string { stats := ctx.PlayersStatsFromMatches(10, 10) response := ctx.ReportLeaderBoard(stats) return response }
func backup(c *foosbot.Context) { for { time.Sleep(1 * time.Hour) c.Store() } }