forked from elastic/elasticsearch-net
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReproduce628Tests.cs
96 lines (79 loc) · 3.53 KB
/
Reproduce628Tests.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
using System;
using System.Collections.Generic;
using System.Linq;
using Elasticsearch.Net;
using Nest.Tests.MockData;
using Nest.Tests.MockData.Domain;
using NUnit.Framework;
using System.Diagnostics;
using FluentAssertions;
namespace Nest.Tests.Integration.Reproduce
{
[TestFixture]
public class Reproduce628Tests : IntegrationTests
{
public class Post
{
public int Id { get; set; }
public string Name { get; set; }
}
/// <summary>
/// https://github.com/Mpdreamz/NEST/issues/682
/// </summary>
[Test]
public void AliasesWithDashesAreNotStripped()
{
//unique indexaname already contains dasshes but lets be sure about this
//if the implementation ever changes
var index = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashes";
var x = this._client.CreateIndex(index);
x.Acknowledged.Should().BeTrue();
var alias = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashed-alias";
var aliasResult = this._client.Alias(a => a.Add(aa => aa.Index(index).Alias(alias)));
aliasResult.IsValid.Should().BeTrue();
aliasResult.Acknowledged.Should().BeTrue();
var getIndicesResult = _client.GetIndicesPointingToAlias(alias);
getIndicesResult.Should().NotBeEmpty();
var indexReturned = getIndicesResult.First();
indexReturned.Should().Be(index).And.Contain("-dashes");
var getAliasesResult = this._client.GetAliasesPointingToIndex(index);
getAliasesResult.Should().NotBeEmpty().And.HaveCount(1);
var aliasReturned = getAliasesResult.First().Name;
aliasReturned.Should().Be(alias).And.Contain("-dashed-alias");
var elasticsearchClient = new ElasticsearchClient(ElasticsearchConfiguration.Settings());
var dynamicResult = elasticsearchClient.IndicesGetAlias(index);
IDictionary<string, object> aliases = dynamicResult.Response[index].aliases;
aliases.Count.Should().Be(1);
var aliasDynamic = aliases.Keys.First();
aliasDynamic.Should().Be(alias);
}
[Test]
public void IndexWithDashesAreNotStripped()
{
var index = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashes";
var x = this._client.CreateIndex(index);
x.Acknowledged.Should().BeTrue();
var alias = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashes-alias";
var aliasResult = this._client.Alias(a => a.Add(aa => aa.Index(index).Alias(alias)));
aliasResult.IsValid.Should().BeTrue();
aliasResult.Acknowledged.Should().BeTrue();
var elasticsearchClient = new ElasticsearchClient(ElasticsearchConfiguration.Settings());
var dynamicResult = elasticsearchClient.IndicesGetAliasForAll(alias);
dynamicResult.Response.ContainsKey(index).Should().BeTrue();
}
[Test]
public void IndexWithDashesAreNotStripped2()
{
var index = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashes";
var x = this._client.CreateIndex(index);
x.Acknowledged.Should().BeTrue();
var alias = ElasticsearchConfiguration.NewUniqueIndexName() + "-dashes-alias";
var aliasResult = this._client.Alias(a => a.Add(aa => aa.Index(index).Alias(alias)));
aliasResult.IsValid.Should().BeTrue();
aliasResult.Acknowledged.Should().BeTrue();
var elasticsearchClient = new ElasticsearchClient(ElasticsearchConfiguration.Settings());
var dynamicResult = elasticsearchClient.IndicesGetAlias(alias);
dynamicResult.Response.ContainsKey(index).Should().BeTrue();
}
}
}