Пример #1
0
    def do_test_init(self, basedir):
        # Let's init the addon, no error admited
        f = open(".ignoreme", "w")
        f.write("stuff")
        f.close()

        out, err = StringIO(), StringIO()
        init_run = initializer(None, ["init"], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(init_run, 0)
        self.assertTrue("* lib directory created" in out)
        self.assertTrue("* data directory created" in out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err, "")
        self.assertTrue(len(os.listdir(basedir)) > 0)
        main_js = os.path.join(basedir, "lib", "main.js")
        package_json = os.path.join(basedir, "package.json")
        test_main_js = os.path.join(basedir, "test", "test-main.js")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
        self.assertTrue(os.path.exists(test_main_js))
        self.assertEqual(open(main_js, "r").read(), MAIN_JS)
        self.assertEqual(
            open(package_json, "r").read(),
            PACKAGE_JSON % {"name": "tmp_addon_sample"})
        self.assertEqual(open(test_main_js, "r").read(), TEST_MAIN_JS)

        # Let's check that the addon is initialized
        out, err = StringIO(), StringIO()
        init_run = initializer(None, ["init"], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.failIfEqual(init_run, 0)
        self.assertTrue(
            "This command must be run in an empty directory." in err)
Пример #2
0
    def do_test_init(self,basedir):
        # Let's init the addon, no error admitted
        f = open(".ignoreme","w")
        f.write("stuff")
        f.close()

        out, err = StringIO(), StringIO()
        init_run = initializer(None, ["init"], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(init_run["result"], 0)
        self.assertTrue("* lib directory created" in out)
        self.assertTrue("* data directory created" in out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err,"")
        self.assertTrue(len(os.listdir(basedir))>0)
        main_js = os.path.join(basedir,"lib","main.js")
        package_json = os.path.join(basedir,"package.json")
        test_main_js = os.path.join(basedir,"test","test-main.js")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
        self.assertTrue(os.path.exists(test_main_js))
        self.assertEqual(open(main_js,"r").read(),"")
        self.assertEqual(open(package_json,"r").read() % {"id":"tmp_addon_id" },
                         PACKAGE_JSON % {"name":"tmp_addon_sample",
                                         "fullName": "tmp_addon_SAMPLE",
                                         "id":init_run["jid"] })
        self.assertEqual(open(test_main_js,"r").read(),TEST_MAIN_JS)

        # Let's check that the addon is initialized
        out, err = StringIO(), StringIO()
        init_run = initializer(None, ["init"], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.failIfEqual(init_run["result"],0)
        self.assertTrue("This command must be run in an empty directory." in err)
Пример #3
0
    def test_init_subdir(self):
        parent = os.path.abspath(os.path.join(".test_tmp", self.id()))
        basedir = os.path.join(parent, "init-basedir")
        if os.path.exists(parent):
            shutil.rmtree(parent)
        os.makedirs(parent)

        # if the basedir exists and is not empty, init should refuse
        os.makedirs(basedir)
        f = open(os.path.join(basedir, "boo"), "w")
        f.write("stuff")
        f.close()
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 1)
        self.assertTrue("testing if directory is empty" in out, out)
        self.assertTrue(
            "This command must be run in an empty directory." in err, err)

        # a .dotfile should be tolerated
        os.rename(os.path.join(basedir, "boo"), os.path.join(basedir, ".phew"))
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("* data directory created" in out, out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err, "")
        self.assertTrue(os.listdir(basedir))
        main_js = os.path.join(basedir, "lib", "main.js")
        package_json = os.path.join(basedir, "package.json")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
        shutil.rmtree(basedir)

        # init should create directories that don't exist already
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("* data directory created" in out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err, "")
        self.assertTrue(os.listdir(basedir))
        main_js = os.path.join(basedir, "lib", "main.js")
        package_json = os.path.join(basedir, "package.json")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
Пример #4
0
    def test_init_subdir(self):
        parent = os.path.abspath(os.path.join(".test_tmp", self.id()))
        basedir = os.path.join(parent, "init-basedir")
        if os.path.exists(parent):
            shutil.rmtree(parent)
        os.makedirs(parent)

        # if the basedir exists and is not empty, init should refuse
        os.makedirs(basedir)
        f = open(os.path.join(basedir, "boo"), "w")
        f.write("stuff")
        f.close()
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 1)
        self.assertTrue("testing if directory is empty" in out, out)
        self.assertTrue("This command must be run in an empty directory." in err,
                        err)

        # a .dotfile should be tolerated
        os.rename(os.path.join(basedir, "boo"), os.path.join(basedir, ".phew"))
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("* data directory created" in out, out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err,"")
        self.assertTrue(os.listdir(basedir))
        main_js = os.path.join(basedir,"lib","main.js")
        package_json = os.path.join(basedir,"package.json")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
        shutil.rmtree(basedir)

        # init should create directories that don't exist already
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init", basedir], out, err)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("* data directory created" in out)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err,"")
        self.assertTrue(os.listdir(basedir))
        main_js = os.path.join(basedir,"lib","main.js")
        package_json = os.path.join(basedir,"package.json")
        self.assertTrue(os.path.exists(main_js))
        self.assertTrue(os.path.exists(package_json))
Пример #5
0
 def do_test_args(self, basedir):
     # check that running it with spurious arguments will fail
     out, err = StringIO(), StringIO()
     init_run = initializer(None, ["init", "ignored-dirname"], out, err)
     out, err = out.getvalue(), err.getvalue()
     self.failIfEqual(init_run, 0)
     self.assertTrue("Too many arguments" in err)
Пример #6
0
 def do_test_args(self, basedir):
     # check that running it with spurious arguments will fail
     out,err = StringIO(), StringIO()
     init_run = initializer(None, ["init", "specified-dirname", "extra-arg"], out, err)
     out, err = out.getvalue(), err.getvalue()
     self.failIfEqual(init_run["result"], 0)
     self.assertTrue("Too many arguments" in err)
Пример #7
0
 def _test_existing_files(self, basedir):
     f = open("pay_attention_to_me", "w")
     f.write("stuff")
     f.close()
     out, err = StringIO(), StringIO()
     rc = initializer(None, ["init"], out, err)
     out, err = out.getvalue(), err.getvalue()
     self.assertEqual(rc, 1)
     self.failUnless(
         "This command must be run in an empty directory" in err, err)
     self.failIf(os.path.exists("lib"))
Пример #8
0
 def _test_existing_files(self, basedir):
     f = open("pay_attention_to_me","w")
     f.write("stuff")
     f.close()
     out,err = StringIO(), StringIO()
     rc = initializer(None, ["init"], out, err)
     out, err = out.getvalue(), err.getvalue()
     self.assertEqual(rc["result"], 1)
     self.failUnless("This command must be run in an empty directory" in err,
                     err)
     self.failIf(os.path.exists("lib"))
Пример #9
0
    def test_cfx_init(self):
        # Create an empty test directory
        addon_path = os.path.abspath(os.path.join(".test_tmp", "test-cfx-init"))
        if os.path.isdir(addon_path):
            shutil.rmtree(addon_path)
        os.makedirs(addon_path)

        # Fake a call to cfx init
        old_cwd = os.getcwd()
        os.chdir(addon_path)
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init"], out, err)
        os.chdir(old_cwd)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err,"")

        # run cfx test
        rc, out, err = self.run_cfx(addon_path, ["test"])
        self.assertEqual(rc, 0)
        self.assertIn("2 of 2 tests passed.", err)
        self.assertIn("Program terminated successfully.", err)
Пример #10
0
    def test_cfx_init(self):
        # Create an empty test directory
        addon_path = os.path.abspath(os.path.join(".test_tmp", "test-cfx-init"))
        if os.path.isdir(addon_path):
            shutil.rmtree(addon_path)
        os.makedirs(addon_path)

        # Fake a call to cfx init
        old_cwd = os.getcwd()
        os.chdir(addon_path)
        out, err = StringIO(), StringIO()
        rc = initializer(None, ["init"], out, err)
        os.chdir(old_cwd)
        out, err = out.getvalue(), err.getvalue()
        self.assertEqual(rc["result"], 0)
        self.assertTrue("Have fun!" in out)
        self.assertEqual(err,"")

        # run cfx test
        rc, out, err = self.run_cfx(addon_path, ["test"])
        self.assertEqual(rc, 0)
        self.assertIn("2 of 2 tests passed.", err)
        self.assertIn("Program terminated successfully.", err)