Skip to content

Commit 86dc577

Browse files
updated tests
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
1 parent 784501f commit 86dc577

3 files changed

Lines changed: 26 additions & 19 deletions

File tree

sdk/python/feast/feature_server.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -438,11 +438,15 @@ def materialize(request: MaterializeRequest) -> None:
438438
if request.disable_event_timestamp:
439439
# Query all available data and use current datetime as event timestamp
440440
now = datetime.now()
441-
start_date = datetime(1970, 1, 1) # Beginning of time to capture all historical data
441+
start_date = datetime(
442+
1970, 1, 1
443+
) # Beginning of time to capture all historical data
442444
end_date = now
443445
else:
444446
if not request.start_ts or not request.end_ts:
445-
raise ValueError("start_ts and end_ts are required when disable_event_timestamp is False")
447+
raise ValueError(
448+
"start_ts and end_ts are required when disable_event_timestamp is False"
449+
)
446450
start_date = utils.make_tzaware(parser.parse(request.start_ts))
447451
end_date = utils.make_tzaware(parser.parse(request.end_ts))
448452

sdk/python/tests/unit/cli/test_cli.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -208,13 +208,22 @@ def test_cli_materialize_disable_event_timestamp():
208208

209209
# Test that providing timestamps with --disable-event-timestamp fails
210210
return_code, output = runner.run_with_output(
211-
["materialize", "--disable-event-timestamp", "2021-01-01T00:00:00", "2021-01-02T00:00:00"],
212-
cwd=repo_path
211+
[
212+
"materialize",
213+
"--disable-event-timestamp",
214+
"2021-01-01T00:00:00",
215+
"2021-01-02T00:00:00",
216+
],
217+
cwd=repo_path,
213218
)
214219
assertpy.assert_that(return_code).is_equal_to(2) # Click usage error
215-
assertpy.assert_that(output).contains(b"Cannot specify START_TS or END_TS when --disable-event-timestamp is used")
220+
assertpy.assert_that(output).contains(
221+
b"Cannot specify START_TS or END_TS when --disable-event-timestamp is used"
222+
)
216223

217224
# Test that missing timestamps without flag fails
218225
return_code, output = runner.run_with_output(["materialize"], cwd=repo_path)
219226
assertpy.assert_that(return_code).is_equal_to(2) # Click usage error
220-
assertpy.assert_that(output).contains(b"START_TS and END_TS are required unless --disable-event-timestamp is used")
227+
assertpy.assert_that(output).contains(
228+
b"START_TS and END_TS are required unless --disable-event-timestamp is used"
229+
)

sdk/python/tests/unit/test_feature_server.py

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -155,8 +155,8 @@ def test_materialize_with_timestamps(test_client):
155155
json={
156156
"start_ts": "2021-01-01T00:00:00",
157157
"end_ts": "2021-01-02T00:00:00",
158-
"feature_views": ["driver_hourly_stats"]
159-
}
158+
"feature_views": ["driver_hourly_stats"],
159+
},
160160
)
161161
assert response.status_code == 200
162162

@@ -167,19 +167,16 @@ def test_materialize_disable_event_timestamp(test_client):
167167
"/materialize",
168168
json={
169169
"feature_views": ["driver_hourly_stats"],
170-
"disable_event_timestamp": True
171-
}
170+
"disable_event_timestamp": True,
171+
},
172172
)
173173
assert response.status_code == 200
174174

175175

176176
def test_materialize_missing_timestamps_fails(test_client):
177177
"""Test that missing timestamps without disable_event_timestamp fails"""
178178
response = test_client.post(
179-
"/materialize",
180-
json={
181-
"feature_views": ["driver_hourly_stats"]
182-
}
179+
"/materialize", json={"feature_views": ["driver_hourly_stats"]}
183180
)
184181
assert response.status_code == 422 # Validation error for missing required fields
185182

@@ -189,10 +186,7 @@ def test_materialize_request_model():
189186
from feast.feature_server import MaterializeRequest
190187

191188
# Test with disable_event_timestamp=True (no timestamps needed)
192-
req1 = MaterializeRequest(
193-
feature_views=["test"],
194-
disable_event_timestamp=True
195-
)
189+
req1 = MaterializeRequest(feature_views=["test"], disable_event_timestamp=True)
196190
assert req1.disable_event_timestamp is True
197191
assert req1.start_ts is None
198192
assert req1.end_ts is None
@@ -201,7 +195,7 @@ def test_materialize_request_model():
201195
req2 = MaterializeRequest(
202196
start_ts="2021-01-01T00:00:00",
203197
end_ts="2021-01-02T00:00:00",
204-
feature_views=["test"]
198+
feature_views=["test"],
205199
)
206200
assert req2.disable_event_timestamp is False
207201
assert req2.start_ts == "2021-01-01T00:00:00"

0 commit comments

Comments
 (0)