Skip to content

Add allocation window equivalence test#110

Open
Noah-Philip wants to merge 2 commits into
opencost:mainfrom
Noah-Philip:allocation-window-equivalence
Open

Add allocation window equivalence test#110
Noah-Philip wants to merge 2 commits into
opencost:mainfrom
Noah-Philip:allocation-window-equivalence

Conversation

@Noah-Philip

@Noah-Philip Noah-Philip commented Jun 22, 2026

Copy link
Copy Markdown

Description

Adds an allocation window parsing consistency test.

The test queries /allocation using supported keyword windows:

  • today
  • yesterday
  • week

For each keyword window, it builds an equivalent explicit RFC3339 range from the response window and verifies that the explicit range returns a consistent allocation total.

Implementation

  • Uses the same allocation query parameters for each keyword and explicit range
  • Uses aggregate=namespace, accumulate=true, and includeIdle=true
  • Builds explicit RFC3339 ranges from the API-returned keyword window
  • Compares summed totalCost between keyword and explicit range responses
  • Uses absolute and relative tolerances for small rounding differences

Testing

  • go test -count=1 ./test/integration/api/allocation -run TestAllocationKeywordAndExplicitWindowsEquivalent -v
  • bats test/integration/api/allocation/test.bats

Signed-off-by: noah-philip <noahphilip06@outlook.com>
Copilot AI review requested due to automatic review settings June 22, 2026 14:32
@Noah-Philip
Noah-Philip requested a review from a team as a code owner June 22, 2026 14:32

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new OpenCost integration test that validates allocation window-parsing consistency. For each supported keyword window (today, yesterday, week, 14d), it queries /allocation, rebuilds an equivalent explicit RFC3339 range from the API-returned window, re-queries, and asserts the summed totalCost matches within absolute/relative tolerances. It fits alongside the existing window-related tests (e.g., correct_window_values_test.go) in the allocation integration suite.

Changes:

  • Adds allocation_window_equivalence_test.go implementing TestAllocationKeywordAndExplicitWindowsEquivalent with self-contained helpers for fetching, summing, window extraction, RFC3339 formatting, and tolerance comparison.
  • Registers the new test in test.bats so it runs as part of the allocation suite.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
test/integration/api/allocation/allocation_window_equivalence_test.go New integration test comparing keyword vs. explicit RFC3339 window allocation totals with tolerance handling.
test/integration/api/allocation/test.bats Adds a bats entry to execute the new equivalence test.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Signed-off-by: noah-philip <noahphilip06@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants