def testLink(self): linked_in_module = util.writeTestFiles(util.Test_Trivial_Lib, True) stdout, stderr, statuscode = cli.run( ['-t', Test_Target, '--plain', 'link'], cwd=linked_in_module) self.assertEqual(statuscode, 0) self.assertTrue( os.path.exists( os.path.join(globalInstallDirectory(), 'test-trivial-lib'))) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run( ['-t', Test_Target, '--plain', 'list'], cwd=test_module) self.assertIn('missing', stdout + stderr) stdout, stderr, statuscode = cli.run( ['-t', Test_Target, '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertNotIn('broken', stdout + stderr) stdout, stderr, statuscode = cli.run( ['-t', Test_Target, '--plain', 'list'], cwd=test_module) self.assertNotIn('missing', stdout + stderr) util.rmRf(test_module) util.rmRf(linked_in_module)
def test_logoutLoggedOut(self): # test logging out when already logged out: should be a no-op stdout, stderr, status = cli.run(['logout']) self.assertEqual(status, 0) # check that we're still logged out: stdout, stderr, status = cli.run(['whoami']) self.assertIn('not logged in', stdout+stderr)
def generatedTestMethod(self): test_dir = util.writeTestFiles(filesForReporterTest(**kwargs), test_dir=self.test_dir) # build first, to make test timing more accurate: stdout, stderr, statuscode = cli.run(['--target', systemDefaultTarget(), 'build'], cwd=test_dir) #print('build:', stdout) #print('build:', stderr) #print('build statuscode was:', statuscode) self.assertEqual(statuscode, 0) tstart = time.time() stdout, stderr, statuscode = cli.run(['-vvv', '--target', systemDefaultTarget(), 'test'], cwd=test_dir) duration = time.time() - tstart # useful output for debugging failed tests: if bool(statuscode) == bool(kwargs['test_passes']) or \ duration >= 5.5 + kwargs['reporter_waits'] or \ (kwargs['test_speed'] == 'fast' and (duration >= 1.5 + kwargs['reporter_waits'])): print(stdout + stderr) print(statuscode) print('duration:', duration) if kwargs['test_passes']: self.assertEqual(statuscode, 0) else: self.assertNotEqual(statuscode, 0) # **no** tests should cause a timeout (Which is set at 4.5 seconds in # the test reporter), + the wait-for duration (+ 1 second slack for # process startup etc.) self.assertTrue(duration < 5.5 + kwargs['reporter_waits']) # if a test isn't slow, then it should run in less than 1 seconds if kwargs['test_speed'] == 'fast': self.assertTrue(duration < 1.5 + kwargs['reporter_waits'])
def testUnlinkModuleGlobally(self): test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'link'], cwd=test_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'unlink'], cwd=test_module) self.assertEqual(statuscode, 0) util.rmRf(test_module)
def test_logoutLoggedOut(self): # test logging out when already logged out: should be a no-op stdout, stderr, status = cli.run(['logout']) self.assertEqual(status, 0) # check that we're still logged out: stdout, stderr, status = cli.run(['whoami']) self.assertIn('not logged in', stdout + stderr)
def testUnlinkTargetGlobally(self): test_target = util.writeTestFiles(util.getNativeTargetDescription(), True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'link-target'], cwd=test_target) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'unlink-target'], cwd=test_target) self.assertEqual(statuscode, 0) util.rmRf(test_target)
def testBaseTargetInstallWithShrinkwrap(self): test_dir = util.writeTestFiles(Test_Existing_Shrinkwrap, True) stdout, stderr, statuscode = cli.run(['-t', 'inherits-from-test-target', '--plain', 'install'], cwd=test_dir) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', 'inherits-from-test-target', '--plain', 'target'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertIn('%s %s' % (Test_Target_Name, Test_Target_Old_Version), stdout+stderr) util.rmRf(test_dir)
def testUpdateWithShrinkwrap(self): test_dir = util.writeTestFiles(Test_Existing_Shrinkwrap, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'update'], cwd=test_dir) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'list'], cwd=test_dir) self.assertEqual(statuscode, 0) # as opposed to 0.0.2 which is the latest self.assertIn('test-testing-dummy 0.0.1', stdout+stderr) util.rmRf(test_dir)
def test_notOutdated(self): path = util.writeTestFiles(Test_Outdated, True) stdout, stderr, statuscode = cli.run(['-t', 'x86-linux-native', 'up'], cwd=path) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', 'x86-linux-native', 'outdated'], cwd=path) self.assertEqual(statuscode, 0) self.assertNotIn('test-testing-dummy', stdout + stderr) util.rmRf(path)
def testTargetLinkedBuild(self): linked_in_target = util.writeTestFiles(util.getNativeTargetDescription(), True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep_Preinstalled, True) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'link-target'], cwd=linked_in_target) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'link-target', 'test-native-target'], cwd=test_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'build'], cwd=test_module) self.assertEqual(statuscode, 0) util.rmRf(test_module) util.rmRf(linked_in_target)
def testLinkedBuild(self): linked_in_module = util.writeTestFiles(util.Test_Trivial_Lib, True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link'], cwd=linked_in_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'build'], cwd=test_module) self.assertEqual(statuscode, 0) util.rmRf(test_module) util.rmRf(linked_in_module)
def testUnlinkTarget(self): linked_in_target = util.writeTestFiles(util.getNativeTargetDescription(), True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep_Preinstalled, True) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'link-target'], cwd=linked_in_target) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'link-target', 'test-native-target'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertTrue(os.path.exists(os.path.join(test_module, 'yotta_targets', 'test-native-target'))) stdout, stderr, statuscode = cli.run(['-t', 'test-native-target', '--plain', 'unlink-target', 'test-native-target'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertTrue(not os.path.exists(os.path.join(test_module, 'yotta_targets', 'test-native-target'))) util.rmRf(test_module) util.rmRf(linked_in_target)
def testUnlinkModule(self): linked_in_module = util.writeTestFiles(util.Test_Trivial_Lib, True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link'], cwd=linked_in_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertTrue(os.path.exists(os.path.join(test_module, 'yotta_modules', 'test-trivial-lib'))) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'unlink', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertTrue(not os.path.exists(os.path.join(test_module, 'yotta_modules', 'test-trivial-lib'))) util.rmRf(test_module) util.rmRf(linked_in_module)
def testInstallWithShrinkwrap(self): test_dir = util.writeTestFiles(Test_Existing_Shrinkwrap_Missing_Dependency, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'install'], cwd=test_dir) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'list'], cwd=test_dir) self.assertEqual(statuscode, 0) # as opposed to 0.0.2 which is the latest self.assertIn('test-testing-dummy 0.0.1', stdout+stderr) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'target'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertIn('%s %s' % (Test_Target_Name, Test_Target_Old_Version), stdout+stderr) util.rmRf(test_dir)
def test_yottaVersionCheckOKBuilding(self): test_dir = util.writeTestFiles(Test_Min_Version_OK) stdout, stderr, statuscode = cli.run( ['--target', util.nativeTarget(), 'build'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertNotIn('requires yotta version >', stdout + stderr) util.rmRf(test_dir)
def test_yottaVersionCheckOKInstalling(self): test_dir = util.writeTestFiles(Test_Min_Version_OK) stdout, stderr, statuscode = cli.run( ['--target', 'x86-linux-native', 'install'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertNotIn('requires yotta version >', stdout + stderr) util.rmRf(test_dir)
def testMissingDependenciesShrinkwrap(self): test_dir = util.writeTestFiles(Test_Shrinkwrap_Missing_Dependency, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'shrinkwrap'], cwd=test_dir) self.assertNotEqual(statuscode, 0) self.assertFalse(os.path.exists(os.path.join(test_dir, 'yotta-shrinkwrap.json'))) self.assertIn('is missing', stdout+stderr) util.rmRf(test_dir)
def test_preVersionPreventsBump(self): with open(os.path.join(self.test_dir, 'module.json'), 'w') as f: f.write(Test_PreventVersion_JSON) stdout, stderr, statuscode = cli.run(['version', '1.2.3'], cwd=self.test_dir) self.assertNotEqual(statuscode, 0) stdout = self.runCheckCommand(['version']) self.assertNotIn('1.2.3', stdout)
def test_binNonExistent(self): test_dir = util.writeTestFiles(Test_Bin_Nonexistent) stdout, stderr, statuscode = cli.run(['--target', util.nativeTarget(), 'build'], cwd=test_dir) self.assertIn('directory "doesntexist" doesn\'t exist', stdout+stderr) # !!! FIXME: should this error be fatal? # self.assertNotEqual(statuscode, 0) util.rmRf(test_dir)
def test_setNonexistentTarget(self): stdout, stderr, statuscode = cli.run(['target', 'thisdoesnotexist'], cwd=self.test_dir) self.assertNotEqual(statuscode, 0) self.assertNotIn('Exception', stdout + stderr) self.assertIn('does not exist in the targets registry', stdout + stderr)
def runCheckCommand(self, args, test_dir): stdout, stderr, statuscode = cli.run(args, cwd=test_dir) if statuscode != 0: print('command failed with status %s' % statuscode) print(stdout) print(stderr) self.assertEqual(statuscode, 0) return stdout + stderr
def test_updateExplicit(self): path = util.writeTestFiles(Test_Outdated, True) stdout, stderr, statuscode = cli.run(['-t', 'x86-linux-native', 'update', 'test-testing-dummy'], cwd=path) self.assertEqual(statuscode, 0) self.assertIn('download test-testing-dummy', stdout + stderr) util.rmRf(path)
def test_prePublishPreventsPublish(self): path = util.writeTestFiles(Test_prePublish_Prevents_Publish, True) stdout, stderr, statuscode = cli.run(['-t', 'x86-linux-native', '--noninteractive', 'publish'], cwd=path) self.assertNotEqual(statuscode, 0) self.assertIn('prePublish script error code 1 prevents publishing', stdout + stderr) util.rmRf(path)
def test_yottaVersionTargetCheck(self): test_dir = util.writeTestFiles(Test_Min_Version_Target_Insufficient) stdout, stderr, statuscode = cli.run( ['--target', Test_Min_Version_Target_Name, 'install'], cwd=test_dir) self.assertNotEqual(statuscode, 0) self.assertIn('requires yotta version >', stdout + stderr) util.rmRf(test_dir)
def test_warnOfficialKeywords(self): path = util.writeTestFiles(Test_Publish, True) stdout, stderr, statuscode = cli.run(['-t', 'x86-linux-native', '--noninteractive', 'publish'], cwd=path) self.assertNotEqual(statuscode, 0) self.assertIn('Is this really an officially supported mbed module', stdout + stderr) util.rmRf(path)
def runCheckCommand(self, args, test_dir): stdout, stderr, statuscode = cli.run(args, cwd=self.test_dir) if statuscode != 0: print('command failed with status %s' % statuscode) print(stdout) print(stderr) self.assertEqual(statuscode, 0) return stdout or stderr
def runCheckCommand(args, test_dir): stdout, stderr, statuscode = cli.run(args, cwd=test_dir) if statuscode != 0: print('command failed with status %s' % statuscode) print(stdout) print(stderr) assert(statuscode == 0) return '%s %s' % (stdout, stderr)
def test_unparseableSpec(self): test_dir = util.writeTestFiles(Test_Unparsable_Spec) stdout, stderr, statuscode = cli.run( ['--target', Test_Min_Version_Target_Name, 'install'], cwd=test_dir) self.assertNotEqual(statuscode, 0) self.assertIn('could not parse yotta version spec', stdout + stderr) util.rmRf(test_dir)
def testCreateShrinkwrap(self): test_dir = util.writeTestFiles(Test_Shrinkwrap, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'shrinkwrap'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertTrue(os.path.exists(os.path.join(test_dir, 'yotta-shrinkwrap.json'))) util.rmRf(test_dir)
def test_testOutputFilterNotFound(self): test_dir = util.writeTestFiles(Test_Fitler_NotFound, True) stdout, stderr, statuscode = cli.run(['--target', systemDefaultTarget(), 'test'], cwd=test_dir) if statuscode == 0: print(stdout) print(stderr) self.assertNotEqual(statuscode, 0) util.rmRf(test_dir)
def test_testOutputFilterNotFound(self): test_dir = util.writeTestFiles(Test_Fitler_NotFound, True) stdout, stderr, statuscode = cli.run( ['--target', systemDefaultTarget(), 'test'], cwd=test_dir) if statuscode == 0: print(stdout) print(stderr) self.assertNotEqual(statuscode, 0) util.rmRf(test_dir)
def test_publishPrivate(self): with open(os.path.join(self.test_dir, 'module.json'), 'w') as f: f.write(Private_Module_JSON) stdout, stderr, status = cli.run(['--target', Test_Target, 'publish'], cwd=self.test_dir) self.assertNotEqual(status, 0) self.assertTrue( 'is private and cannot be published' in ('%s %s' % (stdout, stderr)))
def test_libAndBinSpecified(self): test_dir = util.writeTestFiles(Test_Lib_And_Bin) stdout, stderr, statuscode = cli.run( ['--target', util.nativeTarget(), 'build'], cwd=test_dir) self.assertNotEqual(statuscode, 0) self.assertIn( 'Both "lib" and "bin" are specified in module.json: only one is allowed', stdout + stderr) util.rmRf(test_dir)
def test_updateExplicit(self): path = util.writeTestFiles(Test_Outdated, True) stdout, stderr, statuscode = cli.run( ['-t', 'x86-linux-native', 'update', 'test-testing-dummy'], cwd=path) self.assertEqual(statuscode, 0) self.assertIn('download test-testing-dummy', stdout + stderr) util.rmRf(path)
def testLinkedBuild(self): linked_in_module = util.writeTestFiles(util.Test_Trivial_Lib, True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run( ['-t', util.nativeTarget(), '--plain', 'link'], cwd=linked_in_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run( ['-t', util.nativeTarget(), '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run( ['-t', util.nativeTarget(), '--plain', 'build'], cwd=test_module) self.assertEqual(statuscode, 0) util.rmRf(test_module) util.rmRf(linked_in_module)
def testLink(self): linked_in_module = util.writeTestFiles(util.Test_Trivial_Lib, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'link'], cwd=linked_in_module) self.assertEqual(statuscode, 0) self.assertTrue(os.path.exists(os.path.join(globalInstallDirectory(), 'test-trivial-lib'))) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'list'], cwd=test_module) self.assertIn('missing', stdout+stderr) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) self.assertNotIn('broken', stdout+stderr) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'list'], cwd=test_module) self.assertNotIn('missing', stdout+stderr) util.rmRf(test_module) util.rmRf(linked_in_module)
def test_uninstallNonExistent(self): test_dir = tempfile.mkdtemp() with open(os.path.join(test_dir, 'module.json'), 'w') as f: f.write(Test_Module_JSON) stdout = self.runCheckCommand(['--target', Test_Target, 'install'], test_dir) self.assertTrue(os.path.exists(os.path.join(test_dir, 'yotta_modules', 'testing-dummy'))) stdout, stderr, statuscode = cli.run(['uninstall', 'nonexistent'], cwd=test_dir) self.assertNotEqual(statuscode, 0) rmRf(test_dir)
def test_notfound_start(self): test_dir = util.writeTestFiles(util.Test_Trivial_Exe, True) target_descr = _nopStartTargetDescription('start-test-target') del target_descr['./scripts/nop.py'] util.writeTestFiles(target_descr, test_dir=os.path.join(test_dir, 'yotta_targets', 'start-test-target')) # in this case, without the script present we expect a failure output = util.runCheckCommand(['--target', 'start-test-target', 'build'], test_dir) stdout, stderr, statuscode = cli.run(['--target', 'start-test-target', 'start'], cwd=test_dir) self.assertNotEqual(statuscode, 0) util.rmRf(test_dir)
def testLinkedReBuild(self): # test that changing which module is linked triggers a re-build linked_in_module_1 = util.writeTestFiles(util.Test_Trivial_Lib, True) linked_in_module_2 = util.writeTestFiles(util.Test_Trivial_Lib, True) test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link'], cwd=linked_in_module_1) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link', 'test-trivial-lib'], cwd=test_module) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'build'], cwd=test_module) self.assertEqual(statuscode, 0) # check that rebuild is no-op stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'build'], cwd=test_module) self.assertIn('no work to do', stdout+stderr) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'link'], cwd=linked_in_module_2) self.assertEqual(statuscode, 0) stdout, stderr, statuscode = cli.run(['-t', util.nativeTarget(), '--plain', 'build'], cwd=test_module) self.assertNotIn('no work to do', stdout+stderr) self.assertEqual(statuscode, 0) util.rmRf(test_module) util.rmRf(linked_in_module_1) util.rmRf(linked_in_module_2)
def generatedTestMethod(self): test_dir = util.writeTestFiles(filesForReporterTest(**kwargs), test_dir=self.test_dir) # build first, to make test timing more accurate: stdout, stderr, statuscode = cli.run( ['--target', systemDefaultTarget(), 'build'], cwd=test_dir) #print('build:', stdout) #print('build:', stderr) #print('build statuscode was:', statuscode) self.assertEqual(statuscode, 0) tstart = time.time() stdout, stderr, statuscode = cli.run( ['-vvv', '--target', systemDefaultTarget(), 'test'], cwd=test_dir) duration = time.time() - tstart # useful output for debugging failed tests: if bool(statuscode) == bool(kwargs['test_passes']) or \ duration >= 5.5 + kwargs['reporter_waits'] or \ (kwargs['test_speed'] == 'fast' and (duration >= 1.5 + kwargs['reporter_waits'])): print(stdout + stderr) print(statuscode) print('duration:', duration) if kwargs['test_passes']: self.assertEqual(statuscode, 0) else: self.assertNotEqual(statuscode, 0) # **no** tests should cause a timeout (Which is set at 4.5 seconds in # the test reporter), + the wait-for duration (+ 1 second slack for # process startup etc.) self.assertTrue(duration < 5.5 + kwargs['reporter_waits']) # if a test isn't slow, then it should run in less than 1 seconds if kwargs['test_speed'] == 'fast': self.assertTrue(duration < 1.5 + kwargs['reporter_waits'])
def test_testOutputFilterFailing(self): test_dir = util.writeTestFiles(Test_Fitler_Fail, True) stdout, stderr, statuscode = cli.run(['--target', systemDefaultTarget(), 'test'], cwd=test_dir) if statuscode == 0: print(stdout) print(stderr) self.assertIn('test-a failed', '%s %s' % (stdout, stderr)) self.assertIn('test-c failed', '%s %s' % (stdout, stderr)) self.assertIn('test-d failed', '%s %s' % (stdout, stderr)) self.assertIn('test-e failed', '%s %s' % (stdout, stderr)) self.assertIn('test-f failed', '%s %s' % (stdout, stderr)) self.assertIn('test-g failed', '%s %s' % (stdout, stderr)) self.assertNotEqual(statuscode, 0) util.rmRf(test_dir)
def test_publishNotAuthed(self): # ensure we're not logged in by setting a different settings directory: saved_settings_dir = None if 'YOTTA_USER_SETTINGS_DIR' in os.environ: saved_settings_dir = os.environ['YOTTA_USER_SETTINGS_DIR'] os.environ['YOTTA_USER_SETTINGS_DIR'] = 'tmp_yotta_settings' try: with open(os.path.join(self.test_dir, 'module.json'), 'w') as f: f.write(Public_Module_JSON) stdout, stderr, status = cli.run(['-n', '--target', Test_Target, 'publish'], cwd=self.test_dir) if status != 0: out = stdout+stderr self.assertTrue(out.find('login required') != -1 or out.find('not module owner') != -1) finally: if saved_settings_dir is not None: os.environ['YOTTA_USER_SETTINGS_DIR'] = saved_settings_dir else: del os.environ['YOTTA_USER_SETTINGS_DIR']
def test_publishPrivate(self): with open(os.path.join(self.test_dir, 'module.json'), 'w') as f: f.write(Private_Module_JSON) stdout, stderr, status = cli.run(['--target', Test_Target, 'publish'], cwd=self.test_dir) self.assertNotEqual(status, 0) self.assertTrue('is private and cannot be published' in ('%s %s' % (stdout, stderr)))
def test_yottaVersionCheckOKInstalling(self): test_dir = util.writeTestFiles(Test_Min_Version_OK) stdout, stderr, statuscode = cli.run(['--target', 'x86-linux-native', 'install'], cwd=test_dir) self.assertEqual(statuscode, 0) self.assertNotIn('requires yotta version >', stdout+stderr) util.rmRf(test_dir)
def test_yottaVersionTargetCheck(self): test_dir = util.writeTestFiles(Test_Min_Version_Target_Insufficient) stdout, stderr, statuscode = cli.run(['--target', Test_Min_Version_Target_Name, 'install'], cwd=test_dir) self.assertNotEqual(statuscode, 0) self.assertIn('requires yotta version >', stdout+stderr) util.rmRf(test_dir)
def testUnlinkNonexistentTarget(self): test_module = util.writeTestFiles(util.Test_Testing_Trivial_Lib_Dep, True) stdout, stderr, statuscode = cli.run(['-t', Test_Target, '--plain', 'unlink-target', 'doesnotexist'], cwd=test_module) self.assertNotEqual(statuscode, 0) util.rmRf(test_module)