def get_file(self, platform): file = File() # Real object and not a mock to get the true methods. file.version = self.version file.pk = 666 file.platform = platform file.status = amo.STATUS_PUBLIC file.strict_compatibility = False file.binary_components = False return file
def create_file(self, **kwargs): addon = Addon() addon.save() ver = Version(version='0.1') ver.addon = addon ver.save() f = File(**kwargs) f.version = ver f.save() return f
def test_generate_hash(self): file_ = File() file_.version = Version.objects.get(pk=81551) filename = self.xpi_path('https-everywhere.xpi') assert file_.generate_hash(filename).startswith('sha256:95bd414295acda29c4') file_ = File.objects.get(pk=67442) with storage.open(file_.file_path, 'wb') as fp: fp.write(b'some data\n') with storage.open(file_.guarded_file_path, 'wb') as fp: fp.write(b'some data guarded\n') assert file_.generate_hash().startswith('sha256:5aa03f96c77536579166f') file_.status = amo.STATUS_DISABLED assert file_.generate_hash().startswith('sha256:6524f7791a35ef4dd4c6f') file_.status = amo.STATUS_APPROVED assert file_.generate_hash().startswith('sha256:5aa03f96c77536579166f')
def test_generate_hash(self): f = File() f.version = Version.objects.get(pk=81551) fn = self.xpi_path('delicious_bookmarks-2.1.106-fx') assert f.generate_hash(fn).startswith('sha256:fd277d45ab44f6240e')
def test_generate_filename_ja(self): f = File() f.version = Version(version='0.1.7') f.version.compatible_apps = (amo.FIREFOX,) f.version.addon = Addon(name=u' フォクすけ といっしょ') assert f.generate_filename() == 'addon-0.1.7-fx.xpi'