Example #1
0
	def getMessagesFromDB(cls, numberToGet=0):
		#TODO Combine with getMessagesFromDBSearch
		"""	Returns list of messages as instances of messageModel
		@param numberToGet Number of db records to return
		@return: msgList
		@rtype : list
		"""
		msgList = []
		if numberToGet == 0:
			indexList = cls.searchRecords("")
			for index in indexList:
				index = str(index)
				index = index.strip('(),')
				msg = messageModel(index)
				msgList.append(msg)
		else:
			indexList = cls.getBottomIndexes(numberToGet)
			indexList.reverse()
			for index in indexList:
				index = str(index)
				index = index.strip('(),')
				msg = messageModel(index)
				msgList.append(msg)

		return msgList
class TestHTMLHelper(TestCase):
	def setUp(self):
		"""Go-to project root so we can access the database"""
	os.chdir("..")
	os.chdir("forgeLandWall")

	x = models.messageModel()
	x.message(constants.messageStr + 'meow')
	x = models.messageModel()
	x.message(constants.messageStr + 'cats')
	print("TEST SETUP")

	def tearDown(self):
		"""Delete test messages"""
		dbConn, dbcursor = dbConnManage.dbConnect()
		sqlStr = 'DELETE FROM messages WHERE "message" LIKE "%' + constants.messageStr + '%";'
		dbcursor.execute(sqlStr)
		dbConnManage.dbClose(dbConn)
		print("TEST TEARDOWN")

	def test_getMessages(self):
		output = []
		output = HTMLHelper.getMessagesTable(output)
		print(output)
		self.assertEqual("<table><tr><th>Message</th><th>Timestamp</th><th>Index</th></tr>", output[0])
		# self.assertEqual(constants.messageStr + 'meow', output[1],)
		# TODO Maybe search for specific record? (We already test for this though -_-)
	def test_message(self):
		# Write
		dbObj = models.messageModel()
		dbObj.message(TestMessageModel.messageStr)

		# Search and read back
		indexList = webControl.searchRecords(TestMessageModel.messageStr)
		dbObj2 = models.messageModel(index=indexList[0])

		dbMessageStr = dbObj2.message()

		self.assertEquals(dbMessageStr, TestMessageModel.messageStr)
Example #4
0
    def test_message(self):
        # Write
        dbObj = models.messageModel()
        dbObj.message(TestMessageModel.messageStr)

        # Search and read back
        indexList = webControl.searchRecords(TestMessageModel.messageStr)
        dbObj2 = models.messageModel(index=indexList[0])

        dbMessageStr = dbObj2.message()

        self.assertEquals(dbMessageStr, TestMessageModel.messageStr)
	def test_deleteRecord(self):
		# Create message
		dbObj1 = models.messageModel()
		dbObj1.message(TestMessageModel.messageStr)

		# Delete message
		indexList = webControl.searchRecords(TestMessageModel.messageStr)
		dbObj3 = models.messageModel(index=indexList[0])
		dbObj3.deleteRecord()

		# Search for "missing" record
		dbObj = models.messageModel(index=indexList[0])
		msgStr = dbObj.message()
		testStr = "CANNOT FIND MESSAGE @ INDEX" + str(indexList[0])
		self.assertEquals(msgStr, testStr)
Example #6
0
    def test_deleteRecord(self):
        # Create message
        dbObj1 = models.messageModel()
        dbObj1.message(TestMessageModel.messageStr)

        # Delete message
        indexList = webControl.searchRecords(TestMessageModel.messageStr)
        dbObj3 = models.messageModel(index=indexList[0])
        dbObj3.deleteRecord()

        # Search for "missing" record
        dbObj = models.messageModel(index=indexList[0])
        msgStr = dbObj.message()
        testStr = "CANNOT FIND MESSAGE @ INDEX" + str(indexList[0])
        self.assertEquals(msgStr, testStr)
	def test_searchForRecordsIndex(self):
		# ONLY TESTS FOR EMPTY LIST (we need a better test)
		# TODO Write a better test (see webControl TODO's)
		# Create message
		dbObj = models.messageModel()
		dbObj.message(constants.messageStr)

		# Search for index
		indexList = webControl.searchRecords(constants.messageStr)
		dbObj2 = models.messageModel(index=indexList[0])
		testStr = dbObj2.message()

		self.assertEqual(constants.messageStr, testStr)

		indexList = webControl.searchRecords('headheadheadheadheadheadhead')
		self.assertFalse(indexList)
Example #8
0
 def test_missingRecordIndex(self):
     # Looks up message that should NEVER exist
     import random
     x = random.randint(1, 10)
     dbOjb1 = models.messageModel(x * -1)
     messageStr = dbOjb1.message()
     testStr = "CANNOT FIND MESSAGE @ INDEX" + str(x * -1)
     self.assertEqual(messageStr, testStr)
	def test_missingRecordIndex(self):
		# Looks up message that should NEVER exist
		import random
		x = random.randint(1, 10)
		dbOjb1 = models.messageModel(x * -1)
		messageStr = dbOjb1.message()
		testStr = "CANNOT FIND MESSAGE @ INDEX" + str(x * -1)
		self.assertEqual(messageStr, testStr)
Example #10
0
	def getMessageAsJSONObject(cls, index):

		msgObj = messageModel(index=index)  # Gets the message via index
		msgJSON = empty()
		msgJSON.message = msgObj.message()
		msgJSON.timestamp = msgObj.getTimestamp()
		msgJSON.index = msgObj.getIndex()

		return json.dumps(msgJSON, default=cls.getDict, sort_keys=True)
	def test_searchForMessagesJSON(self):
		dbObj = models.messageModel()
		dbObj.message(constants.messageStr)

		rawJSON = webControl.searchForMessagesJSON(constants.messageStr)
		jsonObj = json.loads(rawJSON)
		jsonTest = jsonObj[0]['message']

		self.assertEqual(constants.messageStr, jsonTest)
Example #12
0
    def test_doesRecordExist(self):
        searchFlag = False
        # Create
        testMsg = TestMessageModel.messageStr + "exist"
        dbObj = models.messageModel()
        dbObj.message(testMsg)

        # Search
        indexList = webControl.searchRecords(testMsg)
        # Compare
        self.assertTrue(models.messageModel.doesRecordExist(indexList[0]))
	def test_doesRecordExist(self):
		searchFlag = False
		# Create
		testMsg = TestMessageModel.messageStr + "exist"
		dbObj = models.messageModel()
		dbObj.message(testMsg)

		# Search
		indexList = webControl.searchRecords(testMsg)
		# Compare
		self.assertTrue(models.messageModel.doesRecordExist(indexList[0]))
Example #14
0
	def getMessagesFromDBSearch(cls, search):
		"""	Returns list of messages as instances of messageModel from search"""
		msgList = []

		indexList = cls.searchRecords(search)
		for index in indexList:
			index = str(index)
			index = index.strip('(),')
			msg = messageModel(index)
			msgList.append(msg)

		return msgList
Example #15
0
	def deleteRecords(cls, index=None):
		x = messageModel(index=index)
		x.deleteRecord()
		pass
Example #16
0
	def updateRecords(cls, indexIn, messageIn=None):
		x = messageModel(index=indexIn)
		x.message(message=cls.cleanInput(messageIn))
		return cls.searchRecords(cls.cleanInput(messageIn))
Example #17
0
	def createRecord(cls, messageIn=None):
		x = messageModel()
		x.message(message=cls.cleanInput(messageIn))
		return cls.searchRecords(cls.cleanInput(messageIn))