class JetpackTest(TestCase): def setUp(self): self.to_delete = [] self.user = create_test_user(username=TEST_USERNAME) self.jetpack = Jet(name=TEST_JETPACK_NAME, creator=self.user) self.jetpack.save() self.version = JetVersion(jetpack=self.jetpack, name='first', author=self.user) self.version.save() def tearDown(self): self.user.delete() for o in self.to_delete: try: o.delete() except: print "Object %s can't be deleted" % str(o) def test_jetpack_creation(self): jetpack = Jet.objects.get(name=TEST_JETPACK_NAME) self.failUnless(jetpack) def test_first_as_base(self): """ First is base """ # first created version is base one self.failUnless(self.jetpack.base_version) self.assertEqual(self.jetpack.base_version.name, 'first') def test_version_numbering(self): self.assertEqual(self.jetpack.base_version.fullname, 'first.0') def test_switch_base(self): """ There is only one base version per Jetpack """ # next base version first_base_id = self.jetpack.base_version.id second_base = JetVersion( jetpack=self.jetpack, name='second', is_base=True, author=self.user ) second_base.save() self.assertEqual(second_base.name, self.jetpack.base_version.name) first_base = JetVersion.objects.get(pk=first_base_id) self.assertEqual(first_base.is_base, False) def test_assign_capability(self): capability = Cap(name="Capability assigned", creator=self.user) capability.save() version = CapVersion(capability=capability, name='0.0', author=self.user) version.save() self.jetpack.base_version.capabilities.add(version) self.failUnless(version in self.jetpack.base_version.capabilities.all()) def test_increase_counter(self): second_version=JetVersion(jetpack=self.jetpack, name='first', author=self.user) second_version.save() self.assertEqual(second_version.counter,1)
def setUp(self): self.to_delete = [] self.user = create_test_user(username=TEST_USERNAME) self.jetpack = Jet(name=TEST_JETPACK_NAME, creator=self.user) self.jetpack.save() self.version = JetVersion(jetpack=self.jetpack, name='first', author=self.user) self.version.save()
def item_edit(r, item, type): """ retrieve item and (if possible) version Render the right edit page for the given type """ try: version = item.base_version except: #valid, as newly created item has no version yet pass if type == "jetpack": other_versions = JetVersion.objects.filter_by_slug(slug=item.slug) elif type == "capability": other_versions = CapVersion.objects.filter_by_slug(slug=item.slug) item_page = True page = "editor" jetpack_create_url = Jet.get_create_url() capability_create_url = Cap.get_create_url() autocomplete_url = reverse("jp_capabilities_autocomplete"); return render_to_response("edit_item.html", locals(), context_instance=RequestContext(r))