def test_py_xx_version(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 2 requirements: build: - python >=2.7 - numpy run: - python x.x - numpy x.x """ with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 35 conda_build.config.config.CONDA_NPY = 17 meta = MetaData(self.recipe_dir) self.index.add_pkg('python', '2.7.2') self.index.add_pkg('python', '2.6.2') self.index.add_pkg('python', '3.5.0') self.index.add_pkg('numpy', '1.8.0', depends=['python']) r = BakedDistribution.compute_matrix(meta, self.index) self.assertEqual(len(r), 2) self.assertEqual(r[0].build_id(), 'np18py27_0') self.assertEqual(r[1].build_id(), 'np18py35_0')
def test_py_xx_version(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 2 build: skip: True # [py3k] requirements: build: - python run: - python """ with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 35 meta = MetaData(self.recipe_dir) self.index.add_pkg('python', '2.7.2') self.index.add_pkg('python', '2.6.2') self.index.add_pkg('python', '3.5.0') r = BakedDistribution.compute_matrix(meta, self.index) self.assertEqual(len(r), 2) self.assertEqual(r[0].build_id(), 'py27_0') self.assertEqual(r[1].build_id(), 'py26_0')
def test_py_xx_version(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 2 build: skip: True # [py3k] requirements: build: - python run: - python """ with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 35 meta = MetaData(self.recipe_dir) self.index.add_pkg('python', '2.7.2') self.index.add_pkg('python', '2.6.2') self.index.add_pkg('python', '3.5.0') r = BakedDistribution.compute_matrix(meta, self.index) self.assertEqual(len(r), 2) self.assertEqual(r[0].build_id(), 'py27_0') self.assertEqual(r[1].build_id(), 'py26_0')
def test_py_xx_version(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 2 requirements: build: - python >=2.7 - numpy run: - python x.x - numpy x.x """ with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 35 conda_build.config.config.CONDA_NPY = 17 meta = MetaData(self.recipe_dir) self.index.add_pkg('python', '2.7.2') self.index.add_pkg('python', '2.6.2') self.index.add_pkg('python', '3.5.0') self.index.add_pkg('numpy', '1.8.0', depends=['python']) r = BakedDistribution.compute_matrix(meta, self.index) self.assertEqual(len(r), 2) self.assertEqual(r[0].build_id(), 'np18py27_0') self.assertEqual(r[1].build_id(), 'np18py35_0')
def test_py_version_selector_skip(self): recipe = """ package: name: recipe_which_depends_on_py_version build: # [py35] skip: True # [py3k] """.replace('\n' + ' ' * 12, '\n').strip() with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 27 meta = MetaData(self.recipe_dir) dist1 = BakedDistribution(meta, (('python', '35', ), )) dist2 = BakedDistribution(meta, (('python', '34', ), )) self.assertEqual(dist1.skip(), True) self.assertEqual(dist2.skip(), False)
def test_py_version_selector(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 3 # [py3k] version: 2 # [not py3k] """.replace('\n' + ' ' * 12, '\n').strip() with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 27 meta = MetaData(self.recipe_dir) dist1 = BakedDistribution(meta, (('python', '27', ), )) self.assertEqual(dist1.version(), u'2') dist2 = BakedDistribution(meta, (('python', '35', ), )) self.assertEqual(dist2.version(), u'3') self.assertEqual(dist1.version(), u'2')
def test_py_version_selector(self): recipe = """ package: name: recipe_which_depends_on_py_version version: 3 # [py3k] version: 2 # [not py3k] """.replace('\n' + ' ' * 12, '\n').strip() with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 27 meta = MetaData(self.recipe_dir) dist1 = BakedDistribution(meta, (( 'python', '27', ), )) self.assertEqual(dist1.version(), u'2') dist2 = BakedDistribution(meta, (( 'python', '35', ), )) self.assertEqual(dist2.version(), u'3') self.assertEqual(dist1.version(), u'2')
def test_py_version_selector_skip(self): recipe = """ package: name: recipe_which_depends_on_py_version build: # [py35] skip: True # [py3k] """.replace('\n' + ' ' * 12, '\n').strip() with open(os.path.join(self.recipe_dir, 'meta.yaml'), 'w') as fh: fh.write(recipe) conda_build.config.config.CONDA_PY = 27 meta = MetaData(self.recipe_dir) dist1 = BakedDistribution(meta, (( 'python', '35', ), )) dist2 = BakedDistribution(meta, (( 'python', '34', ), )) self.assertEqual(dist1.skip(), True) self.assertEqual(dist2.skip(), False)