setup(() => {
		root = new ConnectionProfileGroup(ConnectionProfileGroup.RootGroupName, undefined, ConnectionProfileGroup.RootGroupName, undefined, undefined);

		group1Node = new ConnectionProfileGroup(Groups1, root, Groups1, undefined, undefined);
		group2Node = new ConnectionProfileGroup(Groups2, root, Groups2, undefined, undefined);
		group11Node = new ConnectionProfileGroup(Groups11, root, Groups11, undefined, undefined);
		root.addGroups([group1Node]);
		group1Node.addGroups([group11Node]);
		root.addGroups([group2Node]);
	});
	test('sameGroupName should return false given two different groups', () => {
		let name1: string = '/';
		let name2: string = '/Group1';
		let expected: boolean = false;
		let actual = ConnectionProfileGroup.sameGroupName(name1, name2);
		assert.deepEqual(actual, expected);
	});
	test('sameGroupName should return true given same group names', () => {
		let name1: string = '/group1';
		let name2: string = '/Group1';
		let expected: boolean = true;
		let actual = ConnectionProfileGroup.sameGroupName(name1, name2);
		assert.deepEqual(actual, expected);
	});
	test('isRoot should return true given empty string', () => {
		let name: string = '';
		let expected: boolean = true;
		let actual = ConnectionProfileGroup.isRoot(name);
		assert.deepEqual(actual, expected);
	});
	test('getGroupFullNameParts should not add ROOT if already added and it is not uppercase', () => {
		let groupFullName: string = 'rOOT/Groups/Group1';
		let expected: string[] = [ConnectionProfileGroup.RootGroupName, 'Groups', 'Group1'];
		let actual = ConnectionProfileGroup.getGroupFullNameParts(groupFullName);
		assert.deepEqual(actual, expected);
	});
	test('getGroupFullNameParts should add ROOT as first item if not added already', () => {
		let groupFullName: string = 'Groups/Group1';
		let expected: string[] = [ConnectionProfileGroup.RootGroupName, 'Groups', 'Group1'];
		let actual = ConnectionProfileGroup.getGroupFullNameParts(groupFullName);
		assert.deepEqual(actual, expected);
	});
	test('getGroupFullNameParts should return a list With ROOT in it given /', () => {
		let groupFullName: string = '/';
		let expected: string[] = [ConnectionProfileGroup.RootGroupName];
		let actual = ConnectionProfileGroup.getGroupFullNameParts(groupFullName);
		assert.deepEqual(actual, expected);
	});