Skip to content

Commit 7cc624d

Browse files
authored
Merge pull request #4 from jpstroop/codecov
Codecov
2 parents 0cbc020 + 46572f2 commit 7cc624d

File tree

4 files changed

+47
-175
lines changed

4 files changed

+47
-175
lines changed

.github/workflows/ci.yml

Lines changed: 31 additions & 139 deletions
Original file line numberDiff line numberDiff line change
@@ -8,145 +8,37 @@ on:
88

99
jobs:
1010
test:
11+
name: test
1112
runs-on: ubuntu-latest
12-
1313
steps:
14-
- name: Check out repository
15-
uses: actions/checkout@v3
16-
17-
- name: Set up Python 3.13
18-
uses: actions/setup-python@v4
19-
with:
20-
python-version: "3.13"
21-
22-
- name: Install PDM
23-
run: |
24-
python -m pip install --upgrade pip
25-
pip install pdm
26-
27-
- name: Install dependencies
28-
run: |
29-
pdm install -G:all
30-
31-
- name: Run tests with coverage
32-
run: |
33-
pdm run pytest --cov-report=xml
34-
35-
- name: Upload coverage to Codecov
36-
uses: codecov/codecov-action@v3
37-
with:
38-
token: ${{ secrets.CODECOV_TOKEN }}
39-
file: ./coverage.xml
40-
fail_ci_if_error: false
41-
42-
format:
43-
runs-on: ubuntu-latest
44-
45-
steps:
46-
- name: Check out repository
47-
uses: actions/checkout@v3
48-
49-
- name: Set up Python 3.13
50-
uses: actions/setup-python@v4
51-
with:
52-
python-version: "3.13"
53-
54-
- name: Install PDM
55-
run: |
56-
python -m pip install --upgrade pip
57-
pip install pdm
58-
59-
- name: Install dependencies
60-
run: |
61-
pdm install -G:all
62-
63-
- name: Check Black formatting
64-
run: |
65-
pdm run black --check
66-
67-
- name: Check isort
68-
run: |
69-
pdm run isort --check
70-
71-
- name: Check unused imports with autoflake
72-
run: |
73-
pdm run autoflake
74-
75-
type-check:
76-
runs-on: ubuntu-latest
77-
78-
steps:
79-
- name: Check out repository
80-
uses: actions/checkout@v3
81-
82-
- name: Set up Python 3.13
83-
uses: actions/setup-python@v4
84-
with:
85-
python-version: "3.13"
86-
87-
- name: Install PDM
88-
run: |
89-
python -m pip install --upgrade pip
90-
pip install pdm
91-
92-
- name: Install dependencies
93-
run: |
94-
pdm install -G:all
95-
96-
- name: Run mypy
97-
run: |
98-
pdm run mypy
99-
100-
docs:
101-
runs-on: ubuntu-latest
102-
103-
steps:
104-
- name: Check out repository
105-
uses: actions/checkout@v3
106-
107-
- name: Set up Python 3.13
108-
uses: actions/setup-python@v4
109-
with:
110-
python-version: "3.13"
111-
112-
- name: Install PDM
113-
run: |
114-
python -m pip install --upgrade pip
115-
pip install pdm
116-
117-
- name: Install dependencies
118-
run: |
119-
pdm install -G:all
120-
121-
- name: Check markdown formatting
122-
run: |
123-
echo "Markdown format checking temporarily disabled"
124-
exit 0
14+
- name: Checkout
15+
uses: actions/checkout@v4
16+
with:
17+
fetch-depth: 0
18+
19+
- name: Set up Python 3.13
20+
uses: actions/setup-python@v4
21+
with:
22+
python-version: "3.13"
23+
24+
- name: Install PDM
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install pdm
28+
29+
- name: Install dependencies
30+
run: |
31+
pdm install -G:all
32+
33+
- name: Run tests with coverage
34+
run: |
35+
pdm run pytest --cov=fitbit_client --cov-report=xml:coverage.xml
12536
126-
# todo: https://github.com/ydah/mdformat-action
127-
128-
# build:
129-
# runs-on: ubuntu-latest
130-
# needs: [test, format, type-check, docs]
131-
132-
# steps:
133-
# - name: Check out repository
134-
# uses: actions/checkout@v3
135-
136-
# - name: Set up Python 3.13
137-
# uses: actions/setup-python@v4
138-
# with:
139-
# python-version: "3.13"
140-
141-
# - name: Install PDM
142-
# run: |
143-
# python -m pip install --upgrade pip
144-
# pip install pdm
145-
146-
# - name: Install dependencies
147-
# run: |
148-
# pdm install -G:all
149-
150-
# - name: Build package
151-
# run: |
152-
# pdm build
37+
- name: Upload coverage to Codecov
38+
uses: codecov/codecov-action@v5
39+
with:
40+
token: ${{ secrets.CODECOV_TOKEN }}
41+
files: ./coverage.xml
42+
# fail_ci_if_error: false
43+
name: codecov-umbrella
44+
verbose: true

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Fitbit Client
44

55
[![CI](https://github.com/jpstroop/fitbit-client/actions/workflows/ci.yml/badge.svg)](https://github.com/jpstroop/fitbit-client/actions/workflows/ci.yml)
6-
[![codecov](https://codecov.io/gh/jpstroop/fitbit-client/branch/main/graph/badge.svg)](https://codecov.io/gh/jpstroop/fitbit-client)
6+
[![codecov](https://codecov.io/gh/jpstroop/fitbit-client-python/graph/badge.svg?token=DM0JD8VKZ4)](https://codecov.io/gh/jpstroop/fitbit-client-python)
77
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
88
[![Python 3.13+](https://img.shields.io/badge/python-3.13+-blue.svg)](https://www.python.org/downloads/release/python-3130/)
99
[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)

codecov.yml

Lines changed: 11 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,22 @@
11
codecov:
22
require_ci_to_pass: yes
33
strict_yaml_branch: main
4+
notify:
5+
wait_for_ci: false
6+
after_n_builds: 1
47

58
coverage:
6-
precision: 2
7-
round: down
8-
range: "95...100"
99
status:
10-
project:
10+
project: #add everything under here, more options at https://docs.codecov.com/docs/commit-status
1111
default:
1212
target: 100%
1313
threshold: 0%
14-
base: auto
15-
branches:
16-
- main
17-
if_not_found: failure
18-
if_ci_failed: error
19-
informational: false
20-
only_pulls: false
21-
patch:
22-
default:
23-
target: 100%
24-
threshold: 0%
25-
base: auto
26-
branches:
27-
- main
28-
if_not_found: failure
29-
if_ci_failed: error
30-
informational: false
31-
only_pulls: false
32-
33-
parsers:
34-
gcov:
35-
branch_detection:
36-
conditional: yes
37-
loop: yes
38-
method: no
39-
macro: no
14+
base: auto
4015

41-
comment:
42-
layout: "reach,diff,flags,files,footer"
16+
comment: #this is a top-level key
17+
layout: " diff, flags, files"
4318
behavior: default
44-
require_changes: no
19+
require_changes: false # if true: only post the comment if coverage changes
20+
require_base: false # [true :: must have a base report to post]
21+
require_head: true # [true :: must have a head report to post]
22+
hide_project_coverage: false # [true :: only show coverage on the git diff aka patch coverage]

fitbit_client/resources/nutrition.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,12 @@ def create_food(
103103
error_type="client_validation",
104104
field_name="CALORIES_FROM_FAT",
105105
)
106-
# Handle both enum and string nutritional values
107106
for key, value in nutritional_values.items():
108107
if isinstance(key, NutritionalValue):
109-
params[key.value] = float(value)
108+
if key == NutritionalValue.CALORIES_FROM_FAT:
109+
params[key.value] = int(value)
110+
else:
111+
params[key.value] = float(value)
110112
else:
111113
params[str(key)] = float(value)
112114

0 commit comments

Comments
 (0)