2. and 3. tests implemented