Skip to content

Commit

Permalink
Fix linting
Browse files Browse the repository at this point in the history
  • Loading branch information
ahobsonsayers committed Sep 19, 2024
1 parent e6db5cc commit 453f075
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 35 deletions.
7 changes: 7 additions & 0 deletions cmd/twitchets/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,13 @@ func (c *Config) parseKoanf(k *koanf.Koanf) error {
return fmt.Errorf("invalid events: %w", err)
}

for _, event := range events {
err = event.Validate()
if err != nil {
return err
}
}

c.Country = *country
c.Events = events

Expand Down
8 changes: 2 additions & 6 deletions twickets/filter.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ type Filter struct {
Discount float64 `json:"discount"`
}

func (t Filter) validate() error {
func (t Filter) Validate() error {
if t.Name == "" {
return errors.New("event name must be set")
}
Expand All @@ -36,11 +36,7 @@ func matchesEventName(ticket Ticket, eventName string) bool {
desiredEventName := normaliseEventName(eventName)

similarity := strutil.Similarity(ticketEventName, desiredEventName, metrics.NewJaroWinkler())
if similarity >= 0.85 {
return true
}

return false
return similarity >= 0.85
}

// matchesRegions determines whether a tickets matches any of desired regions
Expand Down
27 changes: 0 additions & 27 deletions twickets/ticket.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (
"regexp"
"strconv"
"strings"
"time"
)

type Ticket struct {
Expand Down Expand Up @@ -165,32 +164,6 @@ func (t Tickets) Filter(filters []Filter) Tickets {
return filteredTickets
}

// ticketsCreatedBeforeTime will return the tickets created before a specified time.
// Passed tickets MUST be ordered by descending time, so recent tickets appear at start.
func (t Tickets) ticketsCreatedBeforeTime(beforeTime time.Time) Tickets {
tickets := make(Tickets, 0, len(t))
for _, ticket := range t {
if ticket.CreatedAt.Time.Before(beforeTime) {
tickets = append(tickets, ticket)
}
}

return tickets
}

// ticketsCreatedAfterTime will return the tickets created after a specified time.
// Passed tickets MUST be ordered by descending time, so recent tickets appear at start.
func (t Tickets) ticketsCreatedAfterTime(afterTime time.Time) Tickets {
tickets := make(Tickets, 0, len(t))
for _, ticket := range t {
if ticket.CreatedAt.Time.After(afterTime) {
tickets = append(tickets, ticket)
}
}

return tickets
}

var spaceRegex = regexp.MustCompile(`\s+`)

func normaliseEventName(eventName string) string {
Expand Down
12 changes: 10 additions & 2 deletions twickets/twickets.go
Original file line number Diff line number Diff line change
Expand Up @@ -111,12 +111,20 @@ func (c *Client) FetchTickets(ctx context.Context, input FetchTicketsInput) (Tic
earliestTicketTime = feedTickets[len(feedTickets)-1].CreatedAt.Time
}

// Only return tickets asked for
// Only return number of tickets requested
if len(tickets) > input.NumTickets {
tickets = tickets[:input.NumTickets]
}

// Only return tickets created after the requested time
if !input.CreatedAfter.IsZero() {
tickets = tickets.ticketsCreatedAfterTime(input.CreatedAfter)
filteredTickets := make(Tickets, 0, len(tickets))
for _, ticket := range tickets {
if ticket.CreatedAt.Time.After(input.CreatedAfter) {
filteredTickets = append(filteredTickets, ticket)
}
}
tickets = filteredTickets
}

return tickets, nil
Expand Down

0 comments on commit 453f075

Please sign in to comment.