mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-11 02:02:22 +00:00
Fix light and georeference feature tests
Not setting the year meant our date calc tests would fail every year :)
This commit is contained in:
@@ -113,6 +113,7 @@ def update_sun_path(self):
|
||||
sun_props.sun_distance = self.sun_path_size
|
||||
sun_props.latitude = self.latitude
|
||||
sun_props.longitude = self.longitude
|
||||
sun_props.year = self.year
|
||||
sun_props.month = self.month
|
||||
sun_props.day = self.day
|
||||
sun_props.time = self.hour + (self.minute / 60)
|
||||
@@ -382,6 +383,7 @@ class BIMSolarProperties(PropertyGroup):
|
||||
longitude: FloatProperty(name="Longitude", min=-180, max=180, update=update_latlong)
|
||||
timezone: StringProperty(name="Timezone", default="Etc/GMT")
|
||||
true_north: FloatProperty(name="True North", min=-180, max=180, update=update_true_north)
|
||||
year: IntProperty(name="Year", min=1, max=9999, default=2025, update=update_date)
|
||||
month: IntProperty(name="Month", min=1, max=12, default=1, update=update_date)
|
||||
day: IntProperty(name="Date", min=1, max=31, default=1, update=update_date)
|
||||
hour: IntProperty(name="Hour", min=0, max=23, default=12, update=update_hourminute)
|
||||
|
||||
@@ -172,6 +172,8 @@ class BIM_PT_solar(bpy.types.Panel):
|
||||
if SolarData.data["true_north"] is not None:
|
||||
row.operator("bim.import_true_north", icon="IMPORT", text="")
|
||||
|
||||
row = self.layout.row()
|
||||
row.prop(props, "year")
|
||||
row = self.layout.row(align=True)
|
||||
row.prop(
|
||||
props,
|
||||
|
||||
@@ -9,14 +9,16 @@ Scenario: Viewing default solar settings
|
||||
Scenario: Changing the month
|
||||
Given an empty IFC project
|
||||
And I look at the "Solar Access / Shadow" panel
|
||||
When I set the "January" property to "3"
|
||||
When I set the "Year" property to "2024"
|
||||
And I set the "January" property to "3"
|
||||
Then I see "March"
|
||||
And I see "Sunrise: 06:08:54"
|
||||
|
||||
Scenario: Changing the date
|
||||
Given an empty IFC project
|
||||
And I look at the "Solar Access / Shadow" panel
|
||||
When I set the "Date" property to "3"
|
||||
When I set the "Year" property to "2024"
|
||||
And I set the "Date" property to "3"
|
||||
Then I see "Sunrise: 06:00:31"
|
||||
|
||||
Scenario: Changing the time
|
||||
@@ -29,6 +31,7 @@ Scenario: Changing the time
|
||||
Scenario: Automatic timezone detection based on lat / long
|
||||
Given an empty IFC project
|
||||
And I look at the "Solar Access / Shadow" panel
|
||||
And I set the "Year" property to "2024"
|
||||
When I set the "Latitude" property to "10.0"
|
||||
And I set the "Longitude" property to "20.0"
|
||||
Then I see "Africa/Ndjamena"
|
||||
|
||||
@@ -274,8 +274,8 @@ def i_see_the_prop_property(prop):
|
||||
@then(parsers.parse('I don\'t see the "{prop}" property'))
|
||||
def i_dont_see_the_prop_property(prop):
|
||||
panel_spy.refresh_spy()
|
||||
assert [
|
||||
p for p in panel_spy.spied_props if prop not in (p["name"], p["text"], p["icon"])
|
||||
assert not [
|
||||
p for p in panel_spy.spied_props if prop in (p["name"], p["text"], p["icon"])
|
||||
], f"Property {prop} not found in {panel_spy.spied_props}"
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user