build and basic OO case pass