47 lines
1.4 KiB
Markdown
47 lines
1.4 KiB
Markdown
---
|
|
epic: 2
|
|
story: 2.4
|
|
title: "Data Units (Binary vs Decimal)"
|
|
status: draft
|
|
---
|
|
|
|
## Epic 2 — Unit Conversion System
|
|
**Goal:** Support 200+ units across all major categories with SI prefix support.
|
|
|
|
### Story 2.4: Data Units (Binary vs Decimal)
|
|
|
|
As a CalcPad user working with digital storage,
|
|
I want correct differentiation between binary (KiB, MiB, GiB) and decimal (kB, MB, GB) data units,
|
|
So that my data size calculations match industry standards.
|
|
|
|
**Acceptance Criteria:**
|
|
|
|
**Given** the expression `1 MB in KB`
|
|
**When** the engine evaluates it
|
|
**Then** the result is `1000 KB` (decimal: 1 MB = 1000 KB)
|
|
|
|
**Given** the expression `1 MiB in KiB`
|
|
**When** the engine evaluates it
|
|
**Then** the result is `1024 KiB` (binary: 1 MiB = 1024 KiB)
|
|
|
|
**Given** the expression `1 GB in MB`
|
|
**When** the engine evaluates it
|
|
**Then** the result is `1000 MB`
|
|
|
|
**Given** the expression `1 GiB in MiB`
|
|
**When** the engine evaluates it
|
|
**Then** the result is `1024 MiB`
|
|
|
|
**Given** the expression `1 byte in bits`
|
|
**When** the engine evaluates it
|
|
**Then** the result is `8 bits`
|
|
|
|
**Given** the expression `1 MB in Mb` (megabytes to megabits)
|
|
**When** the engine evaluates it
|
|
**Then** the result is `8 Mb`
|
|
**And** case sensitivity distinguishes bytes (B) from bits (b)
|
|
|
|
**Given** the expression `5 GiB in GB`
|
|
**When** the engine evaluates it
|
|
**Then** the result correctly cross-converts: `5 * 1024^3 / 1000^3 = 5.36870912 GB`
|