fix introduction of rule
add the gtest framework, and start to write the first two driven cases