quivr/frontend/app/user/components/__tests__/UserStatistics.test.tsx
Nick Guernsey 253e866a86
feat: enhance user page UI (#1319)
# Description

Hope ya'll don't mind, I updated the User Profile's UI to be a bit more
readable. Kept the design neutral to not impose styles.

I also kept the original toggle buttons for Theme and Language in case
we still want to use those in other places in the app, where a select
menu isn't necessary.

## Checklist before requesting a review

Please delete options that are not relevant.

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented hard-to-understand areas
- [ ] I have ideally added tests that prove my fix is effective or that
my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged

## Screenshots (if appropriate):


https://github.com/StanGirard/quivr/assets/64866427/d0320852-ece1-4002-a180-0005df132e71


https://github.com/StanGirard/quivr/assets/64866427/be3c67ec-8d42-44f9-8131-35a70aec20ef

---------

Co-authored-by: Zineb El Bachiri <100568984+gozineb@users.noreply.github.com>
Co-authored-by: Stan Girard <girard.stanislas@gmail.com>
2023-10-05 17:50:02 +02:00

38 lines
1.2 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { formatBrainSizeUsage } from "../UserStatistics";
describe("UserStatistics", () => {
describe("formatBrainSize", () => {
it("should return string", () => {
const result = formatBrainSizeUsage(1, 5);
expect(typeof result).toBe("string");
});
it.each([
{ input: { currentBrainSize: 1, maxBrainSize: 2 }, expected: true },
{ input: { currentBrainSize: 0, maxBrainSize: 0 }, expected: true },
{ input: { currentBrainSize: 1000, maxBrainSize: 5000 }, expected: true },
{
input: { currentBrainSize: 1337, maxBrainSize: 2674 },
expected: true,
},
{ input: { currentBrainSize: 5000, maxBrainSize: 1000 }, expected: true },
])(
"formatBrainSizeUsage($input.currentBrainSize, $input.maxBrainSize) -> $expected",
({ input, expected }) => {
const formatRegex = /^(.+?)\s+\/\s+(.+?)$/gm;
const result = formatBrainSizeUsage(
input.currentBrainSize,
input.maxBrainSize
);
const match = formatRegex.test(result);
expect(typeof result).toBe("string");
expect(match).toBe(expected);
}
);
});
});