コード例 #1
0
ファイル: windowprofile.py プロジェクト: azapletal/pytrainer
 def on_newsport_accept_clicked(self, widget):
     sport = Sport()
     sport.name = unicode(self.newsportentry.get_text())
     sport.met = self._trim_to_null(self.newmetentry.get_text())
     sport.weight = self.newweightentry.get_text()
     sport.max_pace = self._trim_to_null(self.newmaxpace.get_text())
     sport.color = self.stored_color
     if sport.name.lower() in [
             s.name.lower() for s in self._sport_service.get_all_sports()
     ]:
         msg = "Sport '%s' already exists" % sport.name
         logging.error(msg)
         md = gtk.MessageDialog(None, gtk.DIALOG_DESTROY_WITH_PARENT,
                                gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE,
                                _(msg))
         md.set_title(_("Sport Creation Error"))
         md.run()
         md.destroy()
         return
     self._sport_service.store_sport(sport)
     self.parent.actualize_mainsportlist()
     self.on_switch_page(None, None, 2)
     self.hidesportsteps()
     self.buttonbox.set_sensitive(1)
     self.sportlist.show()
コード例 #2
0
 def test_name_should_not_accept_non_unicode_string(self):
     sport = Sport()
     try:
         sport.name = "Juggling"
     except (TypeError):
         pass
     else:
         self.fail()
コード例 #3
0
 def test_name_should_not_accept_none(self):
     sport = Sport()
     try:
         sport.name = None
     except (TypeError):
         pass
     else:
         self.fail()
コード例 #4
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_name_should_not_accept_non_unicode_string(self):
     sport = Sport()
     try:
         sport.name = "Juggling"
     except(TypeError):
         pass
     else:
         self.fail()
コード例 #5
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_name_should_not_accept_none(self):
     sport = Sport()
     try:
         sport.name = None
     except(TypeError):
         pass
     else:
         self.fail()
コード例 #6
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_store_sport_should_error_when_new_sport_has_duplicate_name(self):
     self.mock_ddbb.select.return_value = [(1, u"Test name", 150, 12.5, 200, "0")]
     sport = Sport()
     sport.name = u"Test name"
     try:
         self.sport_service.store_sport(sport)
     except(SportServiceException):
         pass
     else:
         self.fail()
コード例 #7
0
 def test_store_sport_should_error_when_new_sport_has_duplicate_name(self):
     self.mock_ddbb.select.return_value = [(1, u"Test name", 150, 12.5, 200,
                                            "0")]
     sport = Sport()
     sport.name = u"Test name"
     try:
         self.sport_service.store_sport(sport)
     except (SportServiceException):
         pass
     else:
         self.fail()
コード例 #8
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_store_sport_should_insert_row_when_sport_has_no_id(self):
     def mock_select(table, columns, where):
         call_count = self.mock_ddbb.select.call_count
         if call_count == 2:
             return [[1]]
         return []
     self.mock_ddbb.select = mock.Mock(wraps=mock_select)
     sport = Sport()
     sport.name = u"Test name"
     self.sport_service.store_sport(sport)
     self.mock_ddbb.insert.assert_called_with("sports",  "name,weight,met,max_pace,color",
                                              [u"Test name", 0.0, None, None, "0000ff"])
コード例 #9
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_store_sport_should_update_row_when_sport_has_id(self):
     def mock_select(table, columns, where):
         if columns == "id_sports":
             return [[1]]
         else:
             return [(1, u"", 0, 0, 0, "0")]
     self.mock_ddbb.select = mock.Mock(wraps=mock_select)
     sport = Sport()
     sport.id = 1
     sport.name = u"New name"
     self.sport_service.store_sport(sport)
     self.mock_ddbb.update.assert_called_with("sports",  "name,weight,met,max_pace,color",
                                              [u"New name", 0.0, None, None, "0000ff"], "id_sports=1")
コード例 #10
0
    def test_store_sport_should_insert_row_when_sport_has_no_id(self):
        def mock_select(table, columns, where):
            call_count = self.mock_ddbb.select.call_count
            if call_count == 2:
                return [[1]]
            return []

        self.mock_ddbb.select = mock.Mock(wraps=mock_select)
        sport = Sport()
        sport.name = u"Test name"
        self.sport_service.store_sport(sport)
        self.mock_ddbb.insert.assert_called_with(
            "sports", "name,weight,met,max_pace,color",
            [u"Test name", 0.0, None, None, "0000ff"])
コード例 #11
0
    def test_store_sport_should_update_row_when_sport_has_id(self):
        def mock_select(table, columns, where):
            if columns == "id_sports":
                return [[1]]
            else:
                return [(1, u"", 0, 0, 0, "0")]

        self.mock_ddbb.select = mock.Mock(wraps=mock_select)
        sport = Sport()
        sport.id = 1
        sport.name = u"New name"
        self.sport_service.store_sport(sport)
        self.mock_ddbb.update.assert_called_with(
            "sports", "name,weight,met,max_pace,color",
            [u"New name", 0.0, None, None, "0000ff"], "id_sports=1")
コード例 #12
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_store_sport_should_error_when_existing_sport_has_duplicate_name(self):
     def mock_select(table, columns, where):
         if columns == pytrainer.sport._ID_COLUMN:
             return [[2]]
         else:
             return [(1, u"Test name", 0, 0.0, "0"), (2, u"New name", 0, 0.0, "0")]
     self.mock_ddbb.select = mock.Mock(wraps=mock_select)
     sport = Sport()
     sport.id = 1
     sport.name = u"New name"
     try:
         self.sport_service.store_sport(sport)
     except(SportServiceException):
         pass
     else:
         self.fail()
コード例 #13
0
    def test_store_sport_should_error_when_existing_sport_has_duplicate_name(
            self):
        def mock_select(table, columns, where):
            if columns == pytrainer.sport._ID_COLUMN:
                return [[2]]
            else:
                return [(1, u"Test name", 0, 0.0, "0"),
                        (2, u"New name", 0, 0.0, "0")]

        self.mock_ddbb.select = mock.Mock(wraps=mock_select)
        sport = Sport()
        sport.id = 1
        sport.name = u"New name"
        try:
            self.sport_service.store_sport(sport)
        except (SportServiceException):
            pass
        else:
            self.fail()
コード例 #14
0
    def getSportId(self, sport_name, add=None):
        """Deprecated: use sport_service.get_sport_by_name()
		
		Get the id of a sport by name, optionally adding a new sport if
		none exists with the given name.
		arguments:
			sport_name: sport's name to get id for
			add: whether the sport should be added if not found
		returns: id for sport with given name or None"""
        if sport_name is None:
            return None
        sport = self._get_sport(sport_name)
        if sport is None:
            logging.debug("No sport with name: '%s'", str(sport_name))
            if add is not None:
                logging.debug("Adding sport '%s'", str(sport_name))
                new_sport = Sport()
                new_sport.name = unicode(sport_name)
                sport = self._sport_service.store_sport(new_sport)
        return None if sport is None else sport.id
コード例 #15
0
ファイル: record.py プロジェクト: azapletal/pytrainer
	def getSportId(self, sport_name, add=None):
		"""Deprecated: use sport_service.get_sport_by_name()
		
		Get the id of a sport by name, optionally adding a new sport if
		none exists with the given name.
		arguments:
			sport_name: sport's name to get id for
			add: whether the sport should be added if not found
		returns: id for sport with given name or None"""
		if sport_name is None:
			return None
		sport = self._get_sport(sport_name)
		if sport is None:
			logging.debug("No sport with name: '%s'", str(sport_name))
			if add is not None:
				logging.debug("Adding sport '%s'", str(sport_name))
				new_sport = Sport()
				new_sport.name = unicode(sport_name)
				sport = self._sport_service.store_sport(new_sport)
		return None if sport is None else sport.id
コード例 #16
0
ファイル: windowprofile.py プロジェクト: azapletal/pytrainer
 def on_newsport_accept_clicked(self,widget):
     sport = Sport()
     sport.name = unicode(self.newsportentry.get_text())
     sport.met = self._trim_to_null(self.newmetentry.get_text())
     sport.weight = self.newweightentry.get_text()
     sport.max_pace = self._trim_to_null(self.newmaxpace.get_text())
     sport.color = self.stored_color
     if sport.name.lower() in [s.name.lower() for s in self._sport_service.get_all_sports()]:
         msg = "Sport '%s' already exists" % sport.name
         logging.error(msg)
         md = gtk.MessageDialog(None, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE, _(msg))
         md.set_title(_("Sport Creation Error"))
         md.run()
         md.destroy()
         return
     self._sport_service.store_sport(sport)
     self.parent.actualize_mainsportlist()
     self.on_switch_page(None,None,2)
     self.hidesportsteps()
     self.buttonbox.set_sensitive(1)
     self.sportlist.show()
コード例 #17
0
 def test_name_should_accept_unicode_string(self):
     sport = Sport()
     sport.name = u"Unicycling"
     self.assertEquals(u"Unicycling", sport.name)
コード例 #18
0
ファイル: sport_test.py プロジェクト: azapletal/pytrainer
 def test_name_should_accept_unicode_string(self):
     sport = Sport()
     sport.name = u"Unicycling"
     self.assertEquals(u"Unicycling", sport.name)