Example #1
0
 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>&lt;p&gt;Owning property brings "
         "risks.&lt;/p&gt;</description>\n"
         "    <use-location-question>true</use-location-question>\n"
         '    <module optional="false">\n'
         "      <title>Office buildings</title>\n"
         "      <description>&lt;p&gt;Owning property brings "
         "risks.&lt;/p&gt;</description>\n"
         "    </module>\n"
         "  </profile-question>\n"
         "</root>\n",
     )
Example #2
0
 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>&lt;p&gt;Owning property brings risks."
                     "&lt;/p&gt;</description>" in xml)
Example #3
0
 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",
     )
Example #4
0
 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>&lt;p&gt;Owning property brings risks."
         "&lt;/p&gt;</description>\n"
         "    <use-location-question>false</use-location-question>\n"
         "  </profile-question>\n"
         "</root>\n",
     )
Example #5
0
 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>&lt;p&gt;Owning property brings risks."
         "&lt;/p&gt;</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>&lt;p&gt;Locking windows is critical."
         "&lt;/p&gt;</description>\n"
         "      <show-not-applicable>false</show-not-applicable>\n"
         "    </risk>\n"
         "  </profile-question>\n"
         "</root>\n",
     )
Example #6
0
 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",
     )
Example #7
0
 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",
     )