def test_create_thermostatsetpointdualsetpoint(self):

        pyidf.validation_level = ValidationLevel.error

        obj = ThermostatSetpointDualSetpoint()
        # alpha
        var_name = "Name"
        obj.name = var_name
        # object-list
        var_heating_setpoint_temperature_schedule_name = "object-list|Heating Setpoint Temperature Schedule Name"
        obj.heating_setpoint_temperature_schedule_name = var_heating_setpoint_temperature_schedule_name
        # object-list
        var_cooling_setpoint_temperature_schedule_name = "object-list|Cooling Setpoint Temperature Schedule Name"
        obj.cooling_setpoint_temperature_schedule_name = var_cooling_setpoint_temperature_schedule_name

        idf = IDF()
        idf.add(obj)
        idf.save(self.path, check=False)

        with open(self.path, mode='r') as f:
            for line in f:
                log.debug(line.strip())

        idf2 = IDF(self.path)
        self.assertEqual(idf2.thermostatsetpointdualsetpoints[0].name, var_name)
        self.assertEqual(idf2.thermostatsetpointdualsetpoints[0].heating_setpoint_temperature_schedule_name, var_heating_setpoint_temperature_schedule_name)
        self.assertEqual(idf2.thermostatsetpointdualsetpoints[0].cooling_setpoint_temperature_schedule_name, var_cooling_setpoint_temperature_schedule_name)
    def test_create_thermostatsetpointdualsetpoint(self):

        pyidf.validation_level = ValidationLevel.error

        obj = ThermostatSetpointDualSetpoint()
        # alpha
        var_name = "Name"
        obj.name = var_name
        # object-list
        var_heating_setpoint_temperature_schedule_name = "object-list|Heating Setpoint Temperature Schedule Name"
        obj.heating_setpoint_temperature_schedule_name = var_heating_setpoint_temperature_schedule_name
        # object-list
        var_cooling_setpoint_temperature_schedule_name = "object-list|Cooling Setpoint Temperature Schedule Name"
        obj.cooling_setpoint_temperature_schedule_name = var_cooling_setpoint_temperature_schedule_name

        idf = IDF()
        idf.add(obj)
        idf.save(self.path, check=False)

        with open(self.path, mode='r') as f:
            for line in f:
                log.debug(line.strip())

        idf2 = IDF(self.path)
        self.assertEqual(idf2.thermostatsetpointdualsetpoints[0].name,
                         var_name)
        self.assertEqual(
            idf2.thermostatsetpointdualsetpoints[0].
            heating_setpoint_temperature_schedule_name,
            var_heating_setpoint_temperature_schedule_name)
        self.assertEqual(
            idf2.thermostatsetpointdualsetpoints[0].
            cooling_setpoint_temperature_schedule_name,
            var_cooling_setpoint_temperature_schedule_name)
    obj37.demand_controlled_ventilation_type = None
    obj37.outdoor_air_economizer_type = None
    obj37.heat_recovery_type = None
    obj37.sensible_heat_recovery_effectiveness = None
    obj37.latent_heat_recovery_effectiveness = None
    idf.add(obj37)

    obj38 = ZoneControlThermostat()
    obj38.name = "ZONE ONE Thermostat"
    obj38.zone_or_zonelist_name = "ZONE ONE"
    obj38.control_type_schedule_name = "ALWAYS 4"
    obj38.control_1_object_type = "ThermostatSetpoint:DualSetpoint"
    obj38.control_1_name = "Office Thermostat Dual SP Control"
    idf.add(obj38)

    obj39 = ThermostatSetpointDualSetpoint()
    obj39.name = "Office Thermostat Dual SP Control"
    obj39.heating_setpoint_temperature_schedule_name = "ALWAYS 20"
    obj39.cooling_setpoint_temperature_schedule_name = "ALWAYS 24"
    idf.add(obj39)

    obj40 = OutputVariable()
    obj40.key_value = "*"
    obj40.variable_name = "Site Outdoor Air Drybulb Temperature"
    obj40.reporting_frequency = "Hourly"
    idf.add(obj40)

    obj41 = OutputVariable()
    obj41.key_value = "*"
    obj41.variable_name = "Zone Air System Sensible Cooling Energy"
    obj41.reporting_frequency = "Hourly"
    obj37.demand_controlled_ventilation_type = None
    obj37.outdoor_air_economizer_type = None
    obj37.heat_recovery_type = None
    obj37.sensible_heat_recovery_effectiveness = None
    obj37.latent_heat_recovery_effectiveness = None
    idf.add(obj37)

    obj38 = ZoneControlThermostat()
    obj38.name = "ZONE ONE Thermostat"
    obj38.zone_or_zonelist_name = "ZONE ONE"
    obj38.control_type_schedule_name = "ALWAYS 4"
    obj38.control_1_object_type = "ThermostatSetpoint:DualSetpoint"
    obj38.control_1_name = "Office Thermostat Dual SP Control"
    idf.add(obj38)

    obj39 = ThermostatSetpointDualSetpoint()
    obj39.name = "Office Thermostat Dual SP Control"
    obj39.heating_setpoint_temperature_schedule_name = "ALWAYS 20"
    obj39.cooling_setpoint_temperature_schedule_name = "ALWAYS 24"
    idf.add(obj39)

    obj40 = OutputVariable()
    obj40.key_value = "*"
    obj40.variable_name = "Site Outdoor Air Drybulb Temperature"
    obj40.reporting_frequency = "Hourly"
    idf.add(obj40)

    obj41 = OutputVariable()
    obj41.key_value = "*"
    obj41.variable_name = "Zone Air System Sensible Cooling Energy"
    obj41.reporting_frequency = "Hourly"