TIDAORealm/Example/CoreDataDAOTests/CoreDataDAOMessagesTests.swift

66 lines
1.4 KiB
Swift

//
// CoreDataDAOMessagesTests.swift
// DAO
//
// Created by Ivan Vavilov on 5/2/17.
// Copyright © 2017 RedMadRobot LLC. All rights reserved.
//
import XCTest
import DAO
import CoreData
@testable import DAO_Example
final class CoreDataDAOMessagesTests: XCTestCase {
let dao = try! CoreDataDAO(
CDMessageTranslator(),
configuration: CoreDataConfiguration(
containerName: "Model",
storeType: NSInMemoryStoreType))
func testPersistMessage() {
let message = Message(entityId: "abc", text: "text")
do {
try dao.persist(message)
} catch _ {
XCTFail("Persist message is failed")
}
XCTAssertEqual(message, dao.read(message.entityId))
}
func testReadMessage() {
let message = Message(entityId: "def", text: "text 2")
do {
try dao.persist(message)
} catch _ {
XCTFail("Read message is failed")
}
XCTAssertEqual(message, dao.read("def"))
}
func testEraseMessage() {
let message = Message(entityId: "ghi", text: "text 2")
do {
try dao.persist(message)
try dao.erase("ghi")
} catch _ {
XCTFail("Erase message is failed")
}
XCTAssertNil(dao.read("ghi"))
}
}