예제 #1
0
    def test_cfg_stdout(self):
        """ Decrypt a Cfg file to stdout """
        cli = CLI(["--decrypt", "--cfg", "-p", "basic", "--stdout",
                   os.path.join(self.basedir, "basic.crypt")])
        self.set_options()
        old_stdout = sys.stdout
        sys.stdout = StringIO()
        cli.run()
        output = sys.stdout.getvalue()
        sys.stdout = old_stdout

        self.assertNotExists("basic")
        self.assertEqual(self.cfg_plaintext.strip(), output.strip())
        self.assertNotEncrypted(output)
예제 #2
0
 def test_decrypt_cfg_algorithm(self):
     """ Decrypt a Cfg file with a non-default algorithm """
     # this can't be done with self._cfg_decrypt or even
     # self._decrypt because we have to set the algorithm after
     # other options are set, but before the decrypt is performed
     cli = CLI(["--decrypt", "--cfg", "-p", "basic",
                os.path.join(self.basedir, "basic-des-cbc.crypt")])
     self.set_options()
     Bcfg2.Options.setup.algorithm = "des_cbc"
     cli.run()
     self.assertExists("basic-des-cbc")
     actual = open(os.path.join(self.basedir, "basic-des-cbc")).read()
     self.assertEqual(self.cfg_plaintext, actual)
     self.assertNotEncrypted(actual)
예제 #3
0
 def test_cfg_multiple(self):
     """ Decrypt multiple Cfg files """
     cli = CLI(["--decrypt", "--cfg", "-p", "basic",
                os.path.join(self.basedir, "basic.crypt"),
                os.path.join(self.basedir, "basic2.crypt")])
     self.set_options()
     cli.run()
     self.assertExists("basic")
     self.assertExists("basic2")
     actual1 = open(os.path.join(self.basedir, "basic")).read()
     actual2 = open(os.path.join(self.basedir, "basic2")).read()
     self.assertEqual(self.cfg_plaintext, actual1)
     self.assertEqual(self.cfg_plaintext, actual2)
     self.assertNotEncrypted(actual1)
     self.assertNotEncrypted(actual2)
예제 #4
0
    def test_cfg_stdout(self):
        """ Decrypt a Cfg file to stdout """
        cli = CLI([
            "--decrypt", "--cfg", "-p", "basic", "--stdout",
            os.path.join(self.basedir, "basic.crypt")
        ])
        self.set_options()
        old_stdout = sys.stdout
        sys.stdout = StringIO()
        cli.run()
        output = sys.stdout.getvalue()
        sys.stdout = old_stdout

        self.assertNotExists("basic")
        self.assertEqual(self.cfg_plaintext.strip(), output.strip())
        self.assertNotEncrypted(output)
예제 #5
0
 def test_decrypt_cfg_algorithm(self):
     """ Decrypt a Cfg file with a non-default algorithm """
     # this can't be done with self._cfg_decrypt or even
     # self._decrypt because we have to set the algorithm after
     # other options are set, but before the decrypt is performed
     cli = CLI([
         "--decrypt", "--cfg", "-p", "basic",
         os.path.join(self.basedir, "basic-des-cbc.crypt")
     ])
     self.set_options()
     Bcfg2.Options.setup.algorithm = "des_cbc"
     cli.run()
     self.assertExists("basic-des-cbc")
     actual = open(os.path.join(self.basedir, "basic-des-cbc")).read()
     self.assertEqual(self.cfg_plaintext, actual)
     self.assertNotEncrypted(actual)
예제 #6
0
 def test_cfg_multiple(self):
     """ Decrypt multiple Cfg files """
     cli = CLI([
         "--decrypt", "--cfg", "-p", "basic",
         os.path.join(self.basedir, "basic.crypt"),
         os.path.join(self.basedir, "basic2.crypt")
     ])
     self.set_options()
     cli.run()
     self.assertExists("basic")
     self.assertExists("basic2")
     actual1 = open(os.path.join(self.basedir, "basic")).read()
     actual2 = open(os.path.join(self.basedir, "basic2")).read()
     self.assertEqual(self.cfg_plaintext, actual1)
     self.assertEqual(self.cfg_plaintext, actual2)
     self.assertNotEncrypted(actual1)
     self.assertNotEncrypted(actual2)