예제 #1
0
 def test_download_all(self):
     fLOG(__file__,
          self._testMethodName,
          OutputPrint=__name__ == "__main__")
     temp = get_temp_folder(__file__, "temp_download_all")
     pack = all_set()
     self._download_all(pack[1:], temp)
    def test_all_set(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        nb = self.walk_text(all_set())
        fLOG(self._testMethodName, nb)
 def test_download_all(self):
     fLOG(
         __file__,
         self._testMethodName,
         OutputPrint=__name__ == "__main__")
     temp = get_temp_folder(__file__, "temp_download_all")
     pack = all_set()
     self._download_all(pack[1:], temp)
예제 #4
0
 def test_download_ad3(self):
     fLOG(__file__,
          self._testMethodName,
          OutputPrint=__name__ == "__main__")
     temp = get_temp_folder(__file__, "temp_download_ad3")
     pack = all_set()
     pack = [_ for _ in pack if _.name == "ad3"]
     self._download_all(pack, temp)
 def test_download_ad3(self):
     fLOG(
         __file__,
         self._testMethodName,
         OutputPrint=__name__ == "__main__")
     temp = get_temp_folder(__file__, "temp_download_ad3")
     pack = all_set()
     pack = [_ for _ in pack if _.name == "ad3"]
     self._download_all(pack, temp)
    def test_compare_versions(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        if not sys.platform.startswith("win"):
            # useful only on Windows
            return

        if sys.version_info[0] == 2:
            # not maintaining for Python 2.7
            return

        mods = [mod for mod in all_set() if mod.kind in ("wheel",)]
        fLOG(len(mods))
        assert len(mods) > 0
        clog = CustomLog(os.path.dirname(__file__),
                         "windows_modules_versions.txt")

        diff = []
        for i, mod in enumerate(mods[0:]):
            if mod.name in ["PySide", "cgal_bindings", "ad3"]:
                # skipping modules not available
                continue

            if i % 10 == 0:
                fLOG(i, mod)
            try:
                url1 = mod.get_exewheel_url_link(wheel=True)
            except MissingWheelException:
                url1 = None
            try:
                url2 = mod.get_exewheel_url_link2(wheel=True, source="2")
            except MissingWheelException:
                url2 = None
            if url1 is None and url2 is None:
                fLOG("missing package on both sides", mod)
                clog("missing package on both sides", mod)
                continue
            # fLOG(i, url1, url2)
            n1 = url1[-1] if url1 is not None else None
            n2 = url2[-1] if url2 is not None else None
            v1 = get_wheel_version(n1) if n1 is not None else None
            v2 = get_wheel_version(n2) if n2 is not None else None
            cmp = compare_version(
                v1, v2) if v1 is not None and v2 is not None else -2
            if cmp != 0:
                fLOG("---", i, v1, v2, mod.name)
                clog("---", i, v1, v2, mod.name)
                if v1 is not None and v2 is not None and not ("rc1" in v1 or "rc1" in v2):
                    diff.append(mod)

        assert len(diff) <= 10
    def test_compare_versions(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        if not sys.platform.startswith("win"):
            # useful only on Windows
            return

        if sys.version_info[0] == 2:
            # not maintaining for Python 2.7
            return

        mods = [mod for mod in all_set() if mod.kind in ("wheel",)]
        fLOG(len(mods))
        assert len(mods) > 0

        diff = []
        for i, mod in enumerate(mods[0:]):
            if mod.name in ["PySide", "cgal_bindings", "ad3"]:
                # skipping modules not available
                continue

            if i % 10 == 0:
                fLOG(i, mod)
            try:
                url1 = mod.get_exewheel_url_link(wheel=True)
            except MissingWheelException:
                url1 = None
            try:
                url2 = mod.get_exewheel_url_link2(wheel=True, source="2")
            except MissingWheelException:
                url2 = None
            if url1 is None and url2 is None:
                fLOG("missing package on both sides", mod)
                continue
            # fLOG(i, url1, url2)
            n1 = url1[-1] if url1 is not None else None
            n2 = url2[-1] if url2 is not None else None
            v1 = get_wheel_version(n1) if n1 is not None else None
            v2 = get_wheel_version(n2) if n2 is not None else None
            cmp = compare_version(
                v1, v2) if v1 is not None and v2 is not None else -2
            if cmp != 0:
                fLOG("---", i, v1, v2, mod.name)
                if v1 is not None and v2 is not None and not ("rc1" in v1 or "rc1" in v2):
                    diff.append(mod)

        assert len(diff) <= 10
예제 #8
0
    def test_package_list(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        filename = os.path.join(os.path.dirname(os.path.abspath(
            __file__)), "data", "status_installation_2016-05.txt")

        def clean(s):
            if "\\" in s or "/" in s:
                s = s.replace("\\", "/")[-1]
            return s.strip().lower().replace("_", "-")

        every = set(clean(_.name) for _ in all_set())

        collected = set()
        success = set()
        with open(filename, "r") as f:
            for line in f:
                line = line.strip("\n\r ")
                if "collected" in line:
                    pack = line.split(":")[-1].split(",")
                    for p in pack:
                        collected.add(clean(p))
                else:
                    end = line.split("installed")[-1]
                    spl = end.split()
                    for p in spl:
                        v = p.split('-')[0].strip()
                        if v:
                            success.add(clean(v))

        fLOG(len(collected), list(sorted(collected))[:4])
        fLOG(len(success), list(sorted(success))[:4])
        concat = collected.union(success)

        # not in the list
        fLOG('---------')
        not_list = concat - every
        for p in sorted(not_list):
            fLOG("not in", p)

        # not installed
        fLOG('---------')
        not_installed = every - concat
        for p in sorted(not_installed):
            fLOG("not installed", p)
예제 #9
0
    def test_documentation(self):
        fLOG(
            __file__,
            self._testMethodName,
            OutputPrint=__name__ == "__main__")

        mod = all_set()
        mod.sort()
        df = pandas.DataFrame(_.as_dict(rst_link=True) for _ in mod)
        df = df[["usage", "rst_link", "kind", "version",
                 "license", "purpose", "classifier"]]
        df["classifier"] = df.apply(
            lambda row: classifiers2string(row["classifier"]), axis=1)
        df.columns = ["usage", "name", "kind", "version",
                      "license", "purpose", "classifier"]
        fLOG(df2rst(df))
예제 #10
0
    def test_documentation(self):
        fLOG(__file__,
             self._testMethodName,
             OutputPrint=__name__ == "__main__")

        mod = all_set()
        mod.sort()
        df = pandas.DataFrame(_.as_dict(rst_link=True) for _ in mod)
        df = df[[
            "usage", "rst_link", "kind", "version", "license", "purpose",
            "classifier"
        ]]
        df["classifier"] = df.apply(
            lambda row: classifiers2string(row["classifier"]), axis=1)
        df.columns = [
            "usage", "name", "kind", "version", "license", "purpose",
            "classifier"
        ]
        fLOG(df2rst(df))