test("1. jQuery('#bp').css('background-position') unspecified initial values", function() {
	expect(6);
	
	equals( jQuery('#bp').css('background-position'), '0% 0%', "Assert default/initial value for background-position is 0% 0%" );
	equals( jQuery('#bp').css('backgroundPosition'), '0% 0%', "Assert default/initial value for backgroundPosition is  0% 0%" );

	equals( jQuery('#bp').css('background-position-x'), '0%', "Assert default/initial value for background-position-x is 0%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '0%', "Assert default/initial value for backgroundPositionX is 0%" );

	equals( jQuery('#bp').css('background-position-y'), '0%', "Assert default/initial value for background-position-y is 0%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '0%', "Assert default/initial value for backgroundPositionY is 0%" );
});

test("2. jQuery('#bp2').css('background-position') initial values specified from css", function() {
	expect(6);
	
	equals( jQuery('#bp2').css('background-position'), '10px 1em', "Assert default/initial value for background-position is 10px 1em" );
	equals( jQuery('#bp2').css('backgroundPosition'), '10px 1em', "Assert default/initial value for backgroundPosition is 10px 1em" );
	
	equals( jQuery('#bp2').css('background-position-x'), '10px', "Assert default/initial value for background-position-x is 10px" );
	equals( jQuery('#bp2').css('backgroundPositionX'), '10px', "Assert default/initial value for backgroundPositionX is 10px" );

	equals( jQuery('#bp2').css('background-position-y'), '1em', "Assert default/initial value for background-position-y is 1em" );
	equals( jQuery('#bp2').css('backgroundPositionY'), '1em', "Assert default/initial value for backgroundPositionY is 1em" );	
});

test("3. jQuery('#bp').css('background-position', '10px 5%')", function() {
	expect(6);
	
	jQuery('#bp').css('background-position', "10px 5%");
	equals( jQuery('#bp').css('background-position'), '10px 5%', "Assert set value for background-position is 10px 5%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '10px 5%', "Assert set value for backgroundPosition is 10px 5%" );	
	
	equals( jQuery('#bp').css('background-position-x'), '10px', "Assert set value value for background-position-x is 10px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '10px', "Assert set value value for backgroundPositionX is 10px" );

	equals( jQuery('#bp').css('background-position-y'), '5%', "Assert set value value for background-position-y is 5%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '5%', "Assert set value value for backgroundPositionY is 5%" );	
});

test("4. jQuery('#bp').css('backgroundPosition', '10px 5%')", function() {
	expect(6);
	
	jQuery('#bp').css('backgroundPosition', "10px 5%");
	equals( jQuery('#bp').css('background-position'), '10px 5%', "Assert set value for background-position is 10px 5%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '10px 5%', "Assert set value for backgroundPosition is 10px 5%" );	

	equals( jQuery('#bp').css('background-position-x'), '10px', "Assert set value value for background-position-x is 10px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '10px', "Assert set value value for backgroundPositionX is 10px" );

	equals( jQuery('#bp').css('background-position-y'), '5%', "Assert set value value for background-position-y is 5%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '5%', "Assert set value value for backgroundPositionY is 5%" );	
});

test("5. jQuery('#bp').css({backgroundPosition: '10px 5%'})", function() {
	expect(6);
	
	jQuery('#bp').css({backgroundPosition: "10px 5%"});
	equals( jQuery('#bp').css('background-position'), '10px 5%', "Assert set value for background-position is 10px 5%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '10px 5%', "Assert set value for backgroundPosition is 10px 5%" );	

	equals( jQuery('#bp').css('background-position-x'), '10px', "Assert set value value for background-position-x is 10px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '10px', "Assert set value value for backgroundPositionX is 10px" );

	equals( jQuery('#bp').css('background-position-y'), '5%', "Assert set value value for background-position-y is 5%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '5%', "Assert set value value for backgroundPositionY is 5%" );	
});

test("6. jQuery('#bp').css('background-position-x', '10px')", function() { 
	expect(4);
	
	jQuery('#bp').css('background-position-x', "10px");
	equals( jQuery('#bp').css('background-position'), '10px 0%', "Assert set value for background-position is 10px 0%" );
	equals( jQuery('#bp').css('backgroundPosition'), '10px 0%', "Assert set value for backgroundPosition is 10px 0%" );	
	
	equals( jQuery('#bp').css('background-position-x'), '10px', "Assert set value value for background-position-x is 10px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '10px', "Assert set value value for backgroundPositionX is 10px" );
});

test("7. jQuery('#bp').css('background-position-y', '10px')", function() {
	expect(4);
	
	jQuery('#bp').css('background-position-y', "10px");
	equals( jQuery('#bp').css('background-position'), '0% 10px', "Assert set value for background-position is 0% 10px" );
	equals( jQuery('#bp').css('backgroundPosition'), '0% 10px', "Assert set value for backgroundPosition is 0% 10px" );	
	
	equals( jQuery('#bp').css('background-position-y'), '10px', "Assert set value value for background-position-y is 10px" );
	equals( jQuery('#bp').css('backgroundPositionY'), '10px', "Assert set value value for backgroundPositionY is 10px" );
});

test("8. jQuery('#bp').css({backgroundPositionX: '10px', backgroundPositionY: '5%'})", function() {
	expect(6);
	
	jQuery('#bp').css({backgroundPositionX: "10px", backgroundPositionY: "5%"});
	equals( jQuery('#bp').css('background-position'), '10px 5%', "Assert set value for background-position is 10px 5%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '10px 5%', "Assert set value for backgroundPosition is 10px 5%" );	

	equals( jQuery('#bp').css('background-position-x'), '10px', "Assert set value value for background-position-x is 10px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '10px', "Assert set value value for backgroundPositionX is 10px" );

	equals( jQuery('#bp').css('background-position-y'), '5%', "Assert set value value for background-position-y is 5%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '5%', "Assert set value value for backgroundPositionY is 5%" );	
});

test("9. jQuery('#bp').css({backgroundPositionX: 'right', backgroundPositionY: 'bottom'})", function() {
	expect(6);
	
	jQuery('#bp').css({backgroundPositionX: "right", backgroundPositionY: "bottom"});
	equals( jQuery('#bp').css('background-position'), '100% 100%', "Assert set value for background-position is 100% 100%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '100% 100%', "Assert set value for backgroundPosition is 100% 100%" );	

	equals( jQuery('#bp').css('background-position-x'), '100%', "Assert set value value for background-position-x is 100%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '100%', "Assert set value value for backgroundPositionX is 100%" );

	equals( jQuery('#bp').css('background-position-y'), '100%', "Assert set value value for background-position-y is 100%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '100%', "Assert set value value for backgroundPositionY is 100%" );	
});

test("10. jQuery('#bp').css({backgroundPositionX: 'left', backgroundPositionY: 'top'})", function() {
	expect(6);
	
	jQuery('#bp').css({backgroundPositionX: "left", backgroundPositionY: "top"});
	equals( jQuery('#bp').css('background-position'), '0% 0%', "Assert set value for background-position is 0% 0%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '0% 0%', "Assert set value for backgroundPosition is 0% 0%" );	

	equals( jQuery('#bp').css('background-position-x'), '0%', "Assert set value value for background-position-x is 0%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '0%', "Assert set value value for backgroundPositionX is 0%" );

	equals( jQuery('#bp').css('background-position-y'), '0%', "Assert set value value for background-position-y is 0%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '0%', "Assert set value value for backgroundPositionY is 0%" );	
});

test("11. jQuery('#bp').css({backgroundPositionX: 'center', backgroundPositionY: 'center'})", function() {
	expect(6);
	
	jQuery('#bp').css({backgroundPositionX: "center", backgroundPositionY: "center"});
	equals( jQuery('#bp').css('background-position'), '50% 50%', "Assert set value for background-position is 50% 50%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '50% 50%', "Assert set value for backgroundPosition is 50% 50%" );	

	equals( jQuery('#bp').css('background-position-x'), '50%', "Assert set value value for background-position-x is 50%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '50%', "Assert set value value for backgroundPositionX is 50%" );

	equals( jQuery('#bp').css('background-position-y'), '50%', "Assert set value value for background-position-y is 50%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '50%', "Assert set value value for backgroundPositionY is 50%" );	
});

test("12. jQuery('#bp').css('background-position', '20px')", function() {
	expect(6);
	
	jQuery('#bp').css('background-position', '20px');
	equals( jQuery('#bp').css('background-position'), '20px 50%', "Assert set value for background-position is 20px 50%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '20px 50%', "Assert set value for backgroundPosition is 20px 50%" );	

	equals( jQuery('#bp').css('background-position-x'), '20px', "Assert set value value for background-position-x is 20px" );
	equals( jQuery('#bp').css('backgroundPositionX'), '20px', "Assert set value value for backgroundPositionX is 20px" );

	equals( jQuery('#bp').css('background-position-y'), '50%', "Assert set value value for background-position-y is 50%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '50%', "Assert set value value for backgroundPositionY is 50%" );	
});

test("13. jQuery('#bp').css('backgroundPosition', 'bottom')", function() {
	expect(6);
	
	jQuery('#bp').css('backgroundPosition', 'bottom');
	equals( jQuery('#bp').css('background-position'), '50% 100%', "Assert set value for background-position is 50% 100%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '50% 100%', "Assert set value for backgroundPosition is 50% 100%" );	

	equals( jQuery('#bp').css('background-position-x'), '50%', "Assert set value value for background-position-x is 50%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '50%', "Assert set value value for backgroundPositionX is 50%" );

	equals( jQuery('#bp').css('background-position-y'), '100%', "Assert set value value for background-position-y is 100%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '100%', "Assert set value value for backgroundPositionY is 100%" );	
});

test("14. jQuery('#bp').css('backgroundPosition', 'bottom') after jQuery('#bp').css('backgroundPosition', '10px top')", function() {
	expect(7);
	
	jQuery('#bp').css('backgroundPosition', '10px top');
	equals( jQuery('#bp').css('background-position'), '10px 0%', "Assert set value for background-position is 10px 0%" );	

	jQuery('#bp').css('backgroundPosition', 'bottom');
	equals( jQuery('#bp').css('background-position'), '50% 100%', "Assert set value for background-position is 50% 100%" );	
	equals( jQuery('#bp').css('backgroundPosition'), '50% 100%', "Assert set value for backgroundPosition is 50% 100%" );	

	equals( jQuery('#bp').css('background-position-x'), '50%', "Assert set value value for background-position-x is 50%" );
	equals( jQuery('#bp').css('backgroundPositionX'), '50%', "Assert set value value for backgroundPositionX is 50%" );

	equals( jQuery('#bp').css('background-position-y'), '100%', "Assert set value value for background-position-y is 100%" );
	equals( jQuery('#bp').css('backgroundPositionY'), '100%', "Assert set value value for backgroundPositionY is 100%" );	
});