Commit bb468e00 authored by Ramu Dosapati's avatar Ramu Dosapati

junit test cases added

parent 804da1a7
Pipeline #2923 canceled with stage
#Mon Dec 12 15:14:33 IST 2022
gradle.version=7.4
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="1.6" />
<annotationProcessing>
<profile name="Gradle Imported" enabled="true">
<outputRelativeToContentRoot value="true" />
<processorPath useClasspath="false">
<entry name="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.projectlombok/lombok/1.18.22/9c08ea24c6eb714e2d6170e8122c069a0ba9aacf/lombok-1.18.22.jar" />
</processorPath>
<module name="pricing-pod-poc.main" />
</profile>
</annotationProcessing>
<bytecodeTargetLevel target="11" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="delegatedBuild" value="true" />
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="C:/gradle-6.6.1" />
<option name="gradleJvm" value="#JAVA_HOME" />
<option name="gradleJvm" value="11 (3)" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" project-jdk-name="11" project-jdk-type="JavaSDK" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11 (3)" project-jdk-type="JavaSDK" />
<component name="ProjectType">
<option name="id" value="jpab" />
</component>
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AutoImportSettings">
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="7b9430d6-468c-4ecd-adf2-7064b78ab3d1" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/src/test/java/com/safeway/pricing/safeway/SafewayPricingPodApplicationTests.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/test/java/com/safeway/pricing/safeway/router/RoutesTest.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/gradle.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/gradle.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/build.gradle" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="ExternalProjectsData">
<projectState path="$PROJECT_DIR$">
<ProjectState />
</projectState>
</component>
<component name="ExternalProjectsManager">
<system id="GRADLE">
<state>
<projects_view>
<tree_state>
<expand>
<path>
<item name="" type="6a2764b6:ExternalProjectsStructure$RootNode" />
<item name="pricing-pod-poc" type="f1a62948:ProjectNode" />
</path>
</expand>
<select />
</tree_state>
</projects_view>
</state>
</system>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="MarkdownSettingsMigration">
<option name="stateVersion" value="1" />
</component>
<component name="ProjectId" id="2IoBpODGnVMfFbSvluZ4pwf3cb7" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
"last_opened_file_path": "D:/safeway/pricing-pod-j/pricing-pod-poc/src",
"project.structure.last.edited": "SDKs",
"project.structure.proportion": "0.0",
"project.structure.side.proportion": "0.2",
"settings.editor.selected.configurable": "reference.settingsdialog.project.gradle"
}
}]]></component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="D:\safeway\pricing-pod-j\pricing-pod-poc\src" />
</key>
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="7b9430d6-468c-4ecd-adf2-7064b78ab3d1" name="Changes" comment="" />
<created>1670838237377</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1670838237377</updated>
</task>
<servers />
</component>
</project>
\ No newline at end of file
......@@ -38,7 +38,8 @@ dependencies {
// https://mvnrepository.com/artifact/io.projectreactor.ipc/reactor-netty
implementation group: 'io.projectreactor.ipc', name: 'reactor-netty', version: '0.7.15.RELEASE'
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
testImplementation 'io.projectreactor:reactor-test'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
// https://mvnrepository.com/artifact/org.springframework/spring-web
//implementation group: 'org.springframework', name: 'spring-web', version: '6.0.2'
......
body {
margin: 0;
padding: 0;
font-family: sans-serif;
font-size: 12pt;
}
body, a, a:visited {
color: #303030;
}
#content {
padding-left: 50px;
padding-right: 50px;
padding-top: 30px;
padding-bottom: 30px;
}
#content h1 {
font-size: 160%;
margin-bottom: 10px;
}
#footer {
margin-top: 100px;
font-size: 80%;
white-space: nowrap;
}
#footer, #footer a {
color: #a0a0a0;
}
#line-wrapping-toggle {
vertical-align: middle;
}
#label-for-line-wrapping-toggle {
vertical-align: middle;
}
ul {
margin-left: 0;
}
h1, h2, h3 {
white-space: nowrap;
}
h2 {
font-size: 120%;
}
ul.tabLinks {
padding-left: 0;
padding-top: 10px;
padding-bottom: 10px;
overflow: auto;
min-width: 800px;
width: auto !important;
width: 800px;
}
ul.tabLinks li {
float: left;
height: 100%;
list-style: none;
padding-left: 10px;
padding-right: 10px;
padding-top: 5px;
padding-bottom: 5px;
margin-bottom: 0;
-moz-border-radius: 7px;
border-radius: 7px;
margin-right: 25px;
border: solid 1px #d4d4d4;
background-color: #f0f0f0;
}
ul.tabLinks li:hover {
background-color: #fafafa;
}
ul.tabLinks li.selected {
background-color: #c5f0f5;
border-color: #c5f0f5;
}
ul.tabLinks a {
font-size: 120%;
display: block;
outline: none;
text-decoration: none;
margin: 0;
padding: 0;
}
ul.tabLinks li h2 {
margin: 0;
padding: 0;
}
div.tab {
}
div.selected {
display: block;
}
div.deselected {
display: none;
}
div.tab table {
min-width: 350px;
width: auto !important;
width: 350px;
border-collapse: collapse;
}
div.tab th, div.tab table {
border-bottom: solid #d0d0d0 1px;
}
div.tab th {
text-align: left;
white-space: nowrap;
padding-left: 6em;
}
div.tab th:first-child {
padding-left: 0;
}
div.tab td {
white-space: nowrap;
padding-left: 6em;
padding-top: 5px;
padding-bottom: 5px;
}
div.tab td:first-child {
padding-left: 0;
}
div.tab td.numeric, div.tab th.numeric {
text-align: right;
}
span.code {
display: inline-block;
margin-top: 0em;
margin-bottom: 1em;
}
span.code pre {
font-size: 11pt;
padding-top: 10px;
padding-bottom: 10px;
padding-left: 10px;
padding-right: 10px;
margin: 0;
background-color: #f7f7f7;
border: solid 1px #d0d0d0;
min-width: 700px;
width: auto !important;
width: 700px;
}
span.wrapped pre {
word-wrap: break-word;
white-space: pre-wrap;
word-break: break-all;
}
label.hidden {
display: none;
}
\ No newline at end of file
#summary {
margin-top: 30px;
margin-bottom: 40px;
}
#summary table {
border-collapse: collapse;
}
#summary td {
vertical-align: top;
}
.breadcrumbs, .breadcrumbs a {
color: #606060;
}
.infoBox {
width: 110px;
padding-top: 15px;
padding-bottom: 15px;
text-align: center;
}
.infoBox p {
margin: 0;
}
.counter, .percent {
font-size: 120%;
font-weight: bold;
margin-bottom: 8px;
}
#duration {
width: 125px;
}
#successRate, .summaryGroup {
border: solid 2px #d0d0d0;
-moz-border-radius: 10px;
border-radius: 10px;
}
#successRate {
width: 140px;
margin-left: 35px;
}
#successRate .percent {
font-size: 180%;
}
.success, .success a {
color: #008000;
}
div.success, #successRate.success {
background-color: #bbd9bb;
border-color: #008000;
}
.failures, .failures a {
color: #b60808;
}
.skipped, .skipped a {
color: #c09853;
}
div.failures, #successRate.failures {
background-color: #ecdada;
border-color: #b60808;
}
ul.linkList {
padding-left: 0;
}
ul.linkList li {
list-style: none;
margin-bottom: 5px;
}
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
<title>Test results - Test Summary</title>
<link href="css/base-style.css" rel="stylesheet" type="text/css"/>
<link href="css/style.css" rel="stylesheet" type="text/css"/>
<script src="js/report.js" type="text/javascript"></script>
</head>
<body>
<div id="content">
<h1>Test Summary</h1>
<div id="summary">
<table>
<tr>
<td>
<div class="summaryGroup">
<table>
<tr>
<td>
<div class="infoBox" id="tests">
<div class="counter">3</div>
<p>tests</p>
</div>
</td>
<td>
<div class="infoBox" id="failures">
<div class="counter">1</div>
<p>failures</p>
</div>
</td>
<td>
<div class="infoBox" id="ignored">
<div class="counter">0</div>
<p>ignored</p>
</div>
</td>
<td>
<div class="infoBox" id="duration">
<div class="counter">10.566s</div>
<p>duration</p>
</div>
</td>
</tr>
</table>
</div>
</td>
<td>
<div class="infoBox failures" id="successRate">
<div class="percent">66%</div>
<p>successful</p>
</div>
</td>
</tr>
</table>
</div>
<div id="tabs">
<ul class="tabLinks">
<li>
<a href="#tab0">Failed tests</a>
</li>
<li>
<a href="#tab1">Packages</a>
</li>
<li>
<a href="#tab2">Classes</a>
</li>
</ul>
<div id="tab0" class="tab">
<h2>Failed tests</h2>
<ul class="linkList">
<li>
<a href="classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html">SafewayPricingPodApplicationTests</a>.
<a href="classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html#expectOKResponse_WhenAccessNotSecuredURL()">expectOKResponse_WhenAccessNotSecuredURL()</a>
</li>
</ul>
</div>
<div id="tab1" class="tab">
<h2>Packages</h2>
<table>
<thead>
<tr>
<th>Package</th>
<th>Tests</th>
<th>Failures</th>
<th>Ignored</th>
<th>Duration</th>
<th>Success rate</th>
</tr>
</thead>
<tbody>
<tr>
<td class="failures">
<a href="packages/com.safeway.pricing.safeway.html">com.safeway.pricing.safeway</a>
</td>
<td>3</td>
<td>1</td>
<td>0</td>
<td>10.566s</td>
<td class="failures">66%</td>
</tr>
</tbody>
</table>
</div>
<div id="tab2" class="tab">
<h2>Classes</h2>
<table>
<thead>
<tr>
<th>Class</th>
<th>Tests</th>
<th>Failures</th>
<th>Ignored</th>
<th>Duration</th>
<th>Success rate</th>
</tr>
</thead>
<tbody>
<tr>
<td class="failures">
<a href="classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html">com.safeway.pricing.safeway.SafewayPricingPodApplicationTests</a>
</td>
<td>3</td>
<td>1</td>
<td>0</td>
<td>10.566s</td>
<td class="failures">66%</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="footer">
<p>
<div>
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="http://www.gradle.org">Gradle 7.4</a> at Dec 12, 2022, 4:13:29 PM</p>
</div>
</div>
</body>
</html>
(function (window, document) {
"use strict";
var tabs = {};
function changeElementClass(element, classValue) {
if (element.getAttribute("className")) {
element.setAttribute("className", classValue);
} else {
element.setAttribute("class", classValue);
}
}
function getClassAttribute(element) {
if (element.getAttribute("className")) {
return element.getAttribute("className");
} else {
return element.getAttribute("class");
}
}
function addClass(element, classValue) {
changeElementClass(element, getClassAttribute(element) + " " + classValue);
}
function removeClass(element, classValue) {
changeElementClass(element, getClassAttribute(element).replace(classValue, ""));
}
function initTabs() {
var container = document.getElementById("tabs");
tabs.tabs = findTabs(container);
tabs.titles = findTitles(tabs.tabs);
tabs.headers = findHeaders(container);
tabs.select = select;
tabs.deselectAll = deselectAll;
tabs.select(0);
return true;
}
function getCheckBox() {
return document.getElementById("line-wrapping-toggle");
}
function getLabelForCheckBox() {
return document.getElementById("label-for-line-wrapping-toggle");
}
function findCodeBlocks() {
var spans = document.getElementById("tabs").getElementsByTagName("span");
var codeBlocks = [];
for (var i = 0; i < spans.length; ++i) {
if (spans[i].className.indexOf("code") >= 0) {
codeBlocks.push(spans[i]);
}
}
return codeBlocks;
}
function forAllCodeBlocks(operation) {
var codeBlocks = findCodeBlocks();
for (var i = 0; i < codeBlocks.length; ++i) {
operation(codeBlocks[i], "wrapped");
}
}
function toggleLineWrapping() {
var checkBox = getCheckBox();
if (checkBox.checked) {
forAllCodeBlocks(addClass);
} else {
forAllCodeBlocks(removeClass);
}
}
function initControls() {
if (findCodeBlocks().length > 0) {
var checkBox = getCheckBox();
var label = getLabelForCheckBox();
checkBox.onclick = toggleLineWrapping;
checkBox.checked = false;
removeClass(label, "hidden");
}
}
function switchTab() {
var id = this.id.substr(1);
for (var i = 0; i < tabs.tabs.length; i++) {
if (tabs.tabs[i].id === id) {
tabs.select(i);
break;
}
}
return false;
}
function select(i) {
this.deselectAll();
changeElementClass(this.tabs[i], "tab selected");
changeElementClass(this.headers[i], "selected");
while (this.headers[i].firstChild) {
this.headers[i].removeChild(this.headers[i].firstChild);
}
var h2 = document.createElement("H2");
h2.appendChild(document.createTextNode(this.titles[i]));
this.headers[i].appendChild(h2);
}
function deselectAll() {
for (var i = 0; i < this.tabs.length; i++) {
changeElementClass(this.tabs[i], "tab deselected");
changeElementClass(this.headers[i], "deselected");
while (this.headers[i].firstChild) {
this.headers[i].removeChild(this.headers[i].firstChild);
}
var a = document.createElement("A");
a.setAttribute("id", "ltab" + i);
a.setAttribute("href", "#tab" + i);
a.onclick = switchTab;
a.appendChild(document.createTextNode(this.titles[i]));
this.headers[i].appendChild(a);
}
}
function findTabs(container) {
return findChildElements(container, "DIV", "tab");
}
function findHeaders(container) {
var owner = findChildElements(container, "UL", "tabLinks");
return findChildElements(owner[0], "LI", null);
}
function findTitles(tabs) {
var titles = [];
for (var i = 0; i < tabs.length; i++) {
var tab = tabs[i];
var header = findChildElements(tab, "H2", null)[0];
header.parentNode.removeChild(header);
if (header.innerText) {
titles.push(header.innerText);
} else {
titles.push(header.textContent);
}
}
return titles;
}
function findChildElements(container, name, targetClass) {
var elements = [];
var children = container.childNodes;
for (var i = 0; i < children.length; i++) {
var child = children.item(i);
if (child.nodeType === 1 && child.nodeName === name) {
if (targetClass && child.className.indexOf(targetClass) < 0) {
continue;
}
elements.push(child);
}
}
return elements;
}
// Entry point.
window.onload = function() {
initTabs();
initControls();
};
} (window, window.document));
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="x-ua-compatible" content="IE=edge"/>
<title>Test results - Package com.safeway.pricing.safeway</title>
<link href="../css/base-style.css" rel="stylesheet" type="text/css"/>
<link href="../css/style.css" rel="stylesheet" type="text/css"/>
<script src="../js/report.js" type="text/javascript"></script>
</head>
<body>
<div id="content">
<h1>Package com.safeway.pricing.safeway</h1>
<div class="breadcrumbs">
<a href="../index.html">all</a> &gt; com.safeway.pricing.safeway</div>
<div id="summary">
<table>
<tr>
<td>
<div class="summaryGroup">
<table>
<tr>
<td>
<div class="infoBox" id="tests">
<div class="counter">3</div>
<p>tests</p>
</div>
</td>
<td>
<div class="infoBox" id="failures">
<div class="counter">1</div>
<p>failures</p>
</div>
</td>
<td>
<div class="infoBox" id="ignored">
<div class="counter">0</div>
<p>ignored</p>
</div>
</td>
<td>
<div class="infoBox" id="duration">
<div class="counter">10.566s</div>
<p>duration</p>
</div>
</td>
</tr>
</table>
</div>
</td>
<td>
<div class="infoBox failures" id="successRate">
<div class="percent">66%</div>
<p>successful</p>
</div>
</td>
</tr>
</table>
</div>
<div id="tabs">
<ul class="tabLinks">
<li>
<a href="#tab0">Failed tests</a>
</li>
<li>
<a href="#tab1">Classes</a>
</li>
</ul>
<div id="tab0" class="tab">
<h2>Failed tests</h2>
<ul class="linkList">
<li>
<a href="../classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html">SafewayPricingPodApplicationTests</a>.
<a href="../classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html#expectOKResponse_WhenAccessNotSecuredURL()">expectOKResponse_WhenAccessNotSecuredURL()</a>
</li>
</ul>
</div>
<div id="tab1" class="tab">
<h2>Classes</h2>
<table>
<thread>
<tr>
<th>Class</th>
<th>Tests</th>
<th>Failures</th>
<th>Ignored</th>
<th>Duration</th>
<th>Success rate</th>
</tr>
</thread>
<tr>
<td class="failures">
<a href="../classes/com.safeway.pricing.safeway.SafewayPricingPodApplicationTests.html">SafewayPricingPodApplicationTests</a>
</td>
<td>3</td>
<td>1</td>
<td>0</td>
<td>10.566s</td>
<td class="failures">66%</td>
</tr>
</table>
</div>
</div>
<div id="footer">
<p>
<div>
<label class="hidden" id="label-for-line-wrapping-toggle" for="line-wrapping-toggle">Wrap lines
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="http://www.gradle.org">Gradle 7.4</a> at Dec 12, 2022, 4:13:29 PM</p>
</div>
</div>
</body>
</html>
server.port=8789
spring.mvc.pathmatch.matching-strategy = ANT_PATH_MATCHER
client.host=http://localhost:8789
spring.username = ${userName}
server.port=8788
spring.mvc.pathmatch.matching-strategy = ANT_PATH_MATCHER
client.host=http://safeway.com
#spring.active.profiles=prod
#Springboot Application
spring.application.name=spring-boot-management
spring.main.allow-bean-definition-overriding=true
server.port=9999
spring.mvc.pathmatch.matching-strategy = ANT_PATH_MATCHER
client.host=http://localhost:9999
#Mongodb
spring.data.mongodb.database=pricingdb
spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
#actuator
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
management.endpoint.loggers.enabled=true
management.server.servlet.context-path=/actuator
#Admin server
spring.boot.admin.client.url=http://localhost:8081
spring.boot.admin.client.instance.prefer-ip=true
#Logfile
logging.file.name=product-service.log
logging.file.max-history=20
logging.file.max-size=20MB
......@@ -14,4 +14,9 @@ spring:
client-secret: Q-Y8Q~K~Ocg-K-gxR9AjX9dAXYkEIH7BnQYuRcNs
authorization-grant-type: authorization_code
redirect-uri: '{baseUrl}/login/oauth2/code/{registrationId}'
scope: openid,profile
\ No newline at end of file
scope: openid,profile
server:
port: 9999
error:
include-message: always
\ No newline at end of file
......@@ -13,3 +13,50 @@ Using generated security password: 10ed3819-98fb-45eb-88ea-3f5bb2431a17
2022-12-02 13:08:53.532 INFO 28912 --- [main] o.s.b.web.embedded.netty.NettyWebServer : Netty started on port 8789
2022-12-02 13:08:56.041 INFO 28912 --- [main] c.safeway.pricing.PricingPodApplication : Started PricingPodApplication in 17.555 seconds (JVM running for 19.237)
2022-12-12 16:13:17.305 INFO 5008 --- [Test worker] .s.p.s.SafewayPricingPodApplicationTests : Starting SafewayPricingPodApplicationTests using Java 11.0.2 on HYD-LAP-00823 with PID 5008 (started by rdosapati in D:\safeway\pricing-pod-j\pricing-pod-poc)
2022-12-12 16:13:17.307 INFO 5008 --- [Test worker] .s.p.s.SafewayPricingPodApplicationTests : No active profile set, falling back to default profiles: default
2022-12-12 16:13:17.934 INFO 5008 --- [Test worker] ctiveUserDetailsServiceAutoConfiguration :
Using generated security password: 02c4a78b-7b10-482c-b2eb-b09bc13521d3
2022-12-12 16:13:18.427 INFO 5008 --- [Test worker] .s.p.s.SafewayPricingPodApplicationTests : Started SafewayPricingPodApplicationTests in 1.505 seconds (JVM running for 3.188)
2022-12-12 16:13:28.950 ERROR 5008 --- [Test worker] o.s.t.w.reactive.server.ExchangeResult : Request details for assertion failure:
> GET /getDefaultFilterDetails
> WebTestClient-Request-Id: [1]
> Accept: [text/event-stream]
No content
< 200 OK OK
< Content-Type: [text/event-stream;charset=UTF-8]
< Cache-Control: [no-cache, no-store, max-age=0, must-revalidate]
< Pragma: [no-cache]
< Expires: [0]
< X-Content-Type-Options: [nosniff]
< X-Frame-Options: [DENY]
< X-XSS-Protection: [1 ; mode=block]
< Referrer-Policy: [no-referrer]
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
data:{"departments":["314-Dairy"],"category":["3610-Traditional"],"groups":["36-Refrigirator Dairy"],"rog":["VSOC"],"priceAreas":["VSOC-01"],"storeGroups":["51"]}
package com.safeway.pricing.safeway;
import com.safeway.pricing.config.SecurityConfig;
import com.safeway.pricing.handler.PricingHandler;
import com.safeway.pricing.model.FilterByDetails;
import com.safeway.pricing.router.AppRouterConfig;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTest;
import org.springframework.http.MediaType;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.test.web.reactive.server.WebTestClient;
import reactor.core.publisher.Flux;
import java.time.Duration;
@ExtendWith(SpringExtension.class)
@ContextConfiguration(classes={AppRouterConfig.class, PricingHandler.class,SecurityConfig.class})
@WebFluxTest
class SafewayPricingPodApplicationTests {
@Autowired
private WebTestClient webTestClient;
@BeforeEach
void setWebTestClient(){
webTestClient=webTestClient.mutate()
.responseTimeout(Duration.ofMillis(30000))
.build();
}
@Test
void contextLoads() {
}
@Test
void expectOKResponse_WhenAccessNotSecuredURL() throws Exception {
webTestClient.get().uri("/getDefaultFilterDetails")
.accept(MediaType.TEXT_EVENT_STREAM)
.exchange()
.expectStatus()
.is3xxRedirection()
.expectBody(FilterByDetails.class)
.value(System.out::println);
// StepVerifier.create(flux).expectNext(filterByDetails1,filterByDetails1,filterByDetails1,filterByDetails1,filterByDetails1
// ,filterByDetails1,filterByDetails1,filterByDetails1,filterByDetails1,filterByDetails1).verifyComplete();
}
@Test
public void authenticationTest(){
Flux<FilterByDetails> flux=webTestClient.get().uri("/api/getCRCDetails2")
.accept(MediaType.TEXT_EVENT_STREAM)
.exchange()
.expectStatus()
.is3xxRedirection()
.returnResult(FilterByDetails.class).getResponseBody();
}
}
package com.safeway.pricing.safeway.router;
public class RoutesTest {
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment