def testProfileQuestion_WithModule(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.question = "Do you have an office buildings?" profile.description = "<p>Owning property brings risks.</p>" module = Module() module.title = "Office buildings" module.description = "<p>Owning property brings risks.</p>" module.optional = False module.solution_direction = None profile._setOb("1", module) root = self.root() view = ExportSurvey(None, None) view.exportProfileQuestion(root, profile) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Do you have an office buildings?</question>\n" " <description><p>Owning property brings " "risks.</p></description>\n" " <use-location-question>true</use-location-question>\n" ' <module optional="false">\n' " <title>Office buildings</title>\n" " <description><p>Owning property brings " "risks.</p></description>\n" " </module>\n" " </profile-question>\n" "</root>\n", )
def testProfileQuestion_with_description(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.description = "<p>Owning property brings risks.</p>" root = self.root() view = ExportSurvey(None, None) view.exportProfileQuestion(root, profile) xml = safe_nativestring(etree.tostring(root, pretty_print=True)) self.assertTrue("<description><p>Owning property brings risks." "</p></description>" in xml)
def testProfileQuestion_LocationQuestions(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.question = "Do you have an office building?" profile.label_multiple_present = "Do you have more than one building?" profile.label_single_occurance = "Enter the name of your building." profile.label_multiple_occurances = ( "Enter the names of each of your buildings." # noqa ) root = self.root() view = ExportSurvey(None, None) node = view.exportProfileQuestion(root, profile) self.assertTrue(node in root) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Do you have an office building?</question>\n" " <label-multiple-present>Do you have more than one building" "?</label-multiple-present>\n" " <label-single-occurance>Enter the name of your building." "</label-single-occurance>\n" " <label-multiple-occurances>Enter the names of each of your" " buildings.</label-multiple-occurances>\n" " <use-location-question>true</use-location-question>\n" " </profile-question>\n" "</root>\n", )
def testProfileQuestion_WithoutQuestion(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.description = "<p>Owning property brings risks.</p>" profile.use_location_question = False root = self.root() view = ExportSurvey(None, None) view.exportProfileQuestion(root, profile) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Office buildings</question>\n" " <description><p>Owning property brings risks." "</p></description>\n" " <use-location-question>false</use-location-question>\n" " </profile-question>\n" "</root>\n", )
def testProfileQuestion_WithRisk(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.question = "Do you have an office buildings?" profile.description = "<p>Owning property brings risks.</p>" risk = Risk() risk.type = "top5" risk.title = "Can your windows be locked?" risk.problem_description = "Not all your windows can be locked" risk.description = "<p>Locking windows is critical.</p>" risk.legal_reference = None risk.show_notapplicable = False profile._setOb("1", risk) root = self.root() view = ExportSurvey(None, None) view.exportProfileQuestion(root, profile) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Do you have an office buildings?</question>\n" " <description><p>Owning property brings risks." "</p></description>\n" " <use-location-question>true</use-location-question>\n" ' <risk type="top5">\n' " <title>Can your windows be locked?</title>\n" " <problem-description>Not all your windows can be " "locked</problem-description>\n" " <description><p>Locking windows is critical." "</p></description>\n" " <show-not-applicable>false</show-not-applicable>\n" " </risk>\n" " </profile-question>\n" "</root>\n", )
def testProfileQuestion_Minimal(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.question = "Do you have an office building?" profile.use_location_question = False root = self.root() view = ExportSurvey(None, None) node = view.exportProfileQuestion(root, profile) self.assertTrue(node in root) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Do you have an office building?</question>\n" " <use-location-question>false</use-location-question>\n" " </profile-question>\n" "</root>\n", )
def testEtranslateRenderWithoutHTML(self): profile = ProfileQuestion() profile.title = "Office buildings" profile.question = "Do you have an office building?" profile.description = "Plain text" root = self.root() view = ExportSurvey(None, None) view.is_etranslate_compatible = True node = view.exportProfileQuestion(root, profile) self.assertTrue(node in root) self.assertEqual( safe_nativestring(etree.tostring(root, pretty_print=True)), '<root xmlns="http://xml.simplon.biz/euphorie/survey/1.0">\n' " <profile-question>\n" " <title>Office buildings</title>\n" " <question>Do you have an office building?</question>\n" " <description>Plain text</description>\n" " <use-location-question>true</use-location-question>\n" " </profile-question>\n" "</root>\n", )