Exemplo n.º 1
0
    def test_erase(self):
        word1 = {constants.complained_word: "vasya",
                 constants.reason: "typo",
                 constants.word_to_replace: "petya"}
        word2 = {constants.complained_word: "kokoko",
                 constants.reason: "not_a_noun"}
        request = webapp2.Request.blank('/abc/complain')
        request.body = "json={0}". \
            format(json.dumps([word1, word2]))
        request.method = 'POST'
        request.get_response(main.app)
        request.get_response(main.app)

        request = webapp2.Request.blank('/admin/complain/cancel')
        request.method = 'POST'
        request.body = "word=vasya"
        len_before = ComplainedWord.query().count()
        response = request.get_response(main.app)

        self.assertEqual(response.status_int, 200)
        len_after = ComplainedWord.query().count()
        self.assertEqual(len_before, len_after + 2)
        request = webapp2.Request.blank('/admin/complain/clear')
        request.method = 'POST'
        response = request.get_response(main.app)
        self.assertEqual(ComplainedWord.query().count(), 0)
Exemplo n.º 2
0
    def test_erase(self):
        word1 = {
            constants.complained_word: "vasya",
            constants.reason: "typo",
            constants.word_to_replace: "petya"
        }
        word2 = {
            constants.complained_word: "kokoko",
            constants.reason: "not_a_noun"
        }
        request = webapp2.Request.blank('/abc/complain')
        request.body = "json={0}". \
            format(json.dumps([word1, word2]))
        request.method = 'POST'
        request.get_response(main.app)
        request.get_response(main.app)

        request = webapp2.Request.blank('/admin/complain/cancel')
        request.method = 'POST'
        request.body = "word=vasya"
        len_before = ComplainedWord.query().count()
        response = request.get_response(main.app)

        self.assertEqual(response.status_int, 200)
        len_after = ComplainedWord.query().count()
        self.assertEqual(len_before, len_after + 2)
        request = webapp2.Request.blank('/admin/complain/clear')
        request.method = 'POST'
        response = request.get_response(main.app)
        self.assertEqual(ComplainedWord.query().count(), 0)
Exemplo n.º 3
0
 def post(self, *args, **kwargs):
     words = json.loads(self.request.get("json"))
     for word in words:
         g_word = GlobalDictionaryWord.get(word["word"])
         if not g_word or g_word.tags.find("-deleted") >= 0:
             continue
         current_word = ComplainedWord(device=self.device_key,
                                       word=word["word"],
                                       reason=word["reason"])
         if "replace_word" in word:
             current_word.replacement_word = \
                 word["replace_word"]
         current_word.put()
Exemplo n.º 4
0
 def post(self, *args, **kwargs):
     words = json.loads(self.request.get("json"))
     for word in words:
         g_word = GlobalDictionaryWord.get(word["word"])
         if not g_word or g_word.tags.find("-deleted") >= 0:
             continue
         current_word = ComplainedWord(device=self.device_key,
                                       word=word["word"],
                                       reason=word["reason"])
         if "replace_word" in word:
             current_word.replacement_word = \
                 word["replace_word"]
         current_word.put()
Exemplo n.º 5
0
 def get(self, *args, **kwargs):
     cnt = 0
     words = []
     for word in ComplainedWord.query():
         words.append(WordRow(word, cnt))
         cnt += 1
     self.draw_page('complained_words', quantity=len(words), words=words)
Exemplo n.º 6
0
 def test_post(self):
     word1 = {constants.complained_word: "vasya",
              constants.reason: "typo",
              constants.word_to_replace: "petya"}
     word2 = {constants.complained_word: "vasya",
              constants.reason: "not_a_noun"}
     len_before = ComplainedWord.query().count()
     request = webapp2.Request.blank('/abc/complain')
     request.body = "json={0}". \
         format(json.dumps([word1, word2]))
     request.method = 'POST'
     request.get_response(main.app)
     response = request.get_response(main.app)  # It is need to call it twice
     len_after = ComplainedWord.query().count()
     self.assertEqual(response.status_int, 200)
     self.assertEqual(len_after, len_before + 4)
Exemplo n.º 7
0
 def get(self, *args, **kwargs):
     cnt = 0
     words = []
     for word in ComplainedWord.query():
         words.append(WordRow(word, cnt))
         cnt += 1
     self.draw_page('complained_words', quantity=len(words), words=words)
Exemplo n.º 8
0
 def post(self, *args, **kwargs):
     data = self.request.get("word")
     word = ndb.Key(GlobalDictionaryWord, data).get()
     if word:
         if word.tags.find("-deleted") == -1:
             word.tags += "-deleted"
         word.put()
     ndb.delete_multi(ComplainedWord.query(ComplainedWord.word == data).fetch(keys_only=True))
Exemplo n.º 9
0
    def test_delete_from_global_dictionary(self):
        words = ["a", "b", "c", "d"]
        for i in words:
            GlobalDictionaryWord(word=i, id=i, tags="").put()
        ComplainedWord(word="c").put()
        ComplainedWord(word="c").put()
        ComplainedWord(word="d").put()
        request = make_request("/admin/complain/remove", "POST", True, 'word=c')
        response = request.get_response(main.app)
        self.assertEqual(response.status_int, 200)
        self.assertEqual(ComplainedWord.query().count(), 1)
        self.assertEqual(GlobalDictionaryWord.query().count(), 4)
        self.assertEqual(ndb.Key(GlobalDictionaryWord, "c").get().tags, "-deleted")

        ComplainedWord(word="c").put()
        response = request.get_response(main.app)
        self.assertEqual(ComplainedWord.query().count(), 1)
        self.assertEqual(GlobalDictionaryWord.query().count(), 4)
        self.assertEqual(ndb.Key(GlobalDictionaryWord, "c").get().tags, "-deleted")
Exemplo n.º 10
0
 def post(self, *args, **kwargs):
     data = self.request.get("word")
     word = ndb.Key(GlobalDictionaryWord, data).get()
     if word:
         if word.tags.find("-deleted") == -1:
             word.tags += "-deleted"
         word.put()
     ndb.delete_multi(
         ComplainedWord.query(ComplainedWord.word == data).fetch(
             keys_only=True))
Exemplo n.º 11
0
 def test_post(self):
     word1 = {
         constants.complained_word: "vasya",
         constants.reason: "typo",
         constants.word_to_replace: "petya"
     }
     word2 = {
         constants.complained_word: "vasya",
         constants.reason: "not_a_noun"
     }
     len_before = ComplainedWord.query().count()
     request = webapp2.Request.blank('/abc/complain')
     request.body = "json={0}". \
         format(json.dumps([word1, word2]))
     request.method = 'POST'
     request.get_response(main.app)
     response = request.get_response(
         main.app)  # It is need to call it twice
     len_after = ComplainedWord.query().count()
     self.assertEqual(response.status_int, 200)
     self.assertEqual(len_after, len_before + 4)
Exemplo n.º 12
0
    def test_delete_from_global_dictionary(self):
        words = ["a", "b", "c", "d"]
        for i in words:
            GlobalDictionaryWord(word=i, id=i, tags="").put()
        ComplainedWord(word="c").put()
        ComplainedWord(word="c").put()
        ComplainedWord(word="d").put()
        request = make_request("/admin/complain/remove", "POST", True,
                               'word=c')
        response = request.get_response(main.app)
        self.assertEqual(response.status_int, 200)
        self.assertEqual(ComplainedWord.query().count(), 1)
        self.assertEqual(GlobalDictionaryWord.query().count(), 4)
        self.assertEqual(
            ndb.Key(GlobalDictionaryWord, "c").get().tags, "-deleted")

        ComplainedWord(word="c").put()
        response = request.get_response(main.app)
        self.assertEqual(ComplainedWord.query().count(), 1)
        self.assertEqual(GlobalDictionaryWord.query().count(), 4)
        self.assertEqual(
            ndb.Key(GlobalDictionaryWord, "c").get().tags, "-deleted")
Exemplo n.º 13
0
 def post(self, *args, **kwargs):
     deleted_word = self.request.get("word")
     ndb.delete_multi(ComplainedWord.query(ComplainedWord.word == deleted_word).fetch(offset=1, keys_only=True))
Exemplo n.º 14
0
 def post(self, *args, **kwargs):
     ndb.delete_multi(ComplainedWord.query().fetch(keys_only=True))
     self.redirect("/admin/complain/list")
Exemplo n.º 15
0
 def post(self, *args, **kwargs):
     deleted_word = self.request.get("word")
     ndb.delete_multi(
         ComplainedWord.query(ComplainedWord.word == deleted_word).fetch(
             offset=1, keys_only=True))
Exemplo n.º 16
0
 def post(self, *args, **kwargs):
     ndb.delete_multi(ComplainedWord.query().fetch(keys_only=True))
     self.redirect("/admin/complain/list")